gajel
July 12, 2011, 1:30pm
1
Hallo Leute,
ich bin auf der Suche nach einer Möglichkeit mir ALLE Kategorien eines Produktes in der details.php anzeigen zulassen.
[{ assign var="osubcat" value=$product->getCategory()}]
[{ $osubcat->oxcategories__oxtitle->value}]
Mit diesem Befehel kriege ich nur die Hauptkategorie ausgelesen und angezeit.
Über Hilfe würde ich mich freuen.
Grüße Gajel
MBa
July 12, 2011, 1:43pm
2
[{assign var=oCat value='oxcategory'|@oxNew}]
[{foreach from=$product->getCategoryIds() item=sCatId}]
[{capture}][{$oCat->load($sCatId)}][{/capture}]
[{$oCat->oxcategories__oxtitle->value}]
[{/foreach}]
gajel
July 12, 2011, 2:00pm
3
Ich danke vielmals :).
Jetzt muss ich das ganze nur noch formatiert kriegen.
Grüße Gajel
mach ein div drumrum und weise ne Klasse zu - die kannst Du dann via CSS stylen
oder verwende eine passende vorhandene Klasse
gajel
July 12, 2011, 2:31pm
5
Alles erledigt. Perfekt.
Der Superbonus wäre jetzt noch wenn ich die Kategorien mit sich selber verlinken könnte. Ich das machbar?
Grüße Gajel
gajel
July 12, 2011, 2:50pm
7
Ich kriege es nur hin das jede Kategorie den glechen Link hat, also den Link der ersten Kategorien, da ich nicht weiß wie ich mit dem “Foreach” in Verbindung mit der Linkerzeugung umgehen soll.
Mein Ansatz:
<a id="[{$oCat->oxcategories__oxtitle->value }]" class="category" href="[{ $oCat->getLink() }]">[{ $oCat->oxcategories__oxtitle->value }]</a>
MBa
July 12, 2011, 2:59pm
8
[{foreach from=$product->getCategoryIds() item=sCatId}]
[{assign var=oCat value='oxcategory'|@oxNew}]
[{capture}][{$oCat->load($sCatId)}][{/capture}]
[{$oCat->oxcategories__oxtitle->value}]<br />[{$oCat->getLink()}]<br /><br />
[{/foreach}]
So gehts, finde ich nen Bug, dass errechnete Werte nach load erhalten bleiben.
gajel
July 12, 2011, 3:59pm
9
So ist es perfekt:
<ul id="passend">
[{foreach from=$product->getCategoryIds() item=sCatId}]
[{assign var=oCat value='oxcategory'|@oxNew}]
[{capture}][{$oCat->load($sCatId)}][{/capture}]
<li class="modelle"><a href="[{$oCat->getLink()}]">[{$oCat->oxcategories__oxtitle->value}]</a></li>
[{/foreach}]
</ul>
Grüße Gajel
Hi Gajel,
jetzt muss ich mal “dumm” nachfragen: Wofür brauchst Du das? Mit anderen Worten: Ich verstehe den Sinn des Ganzen noch nicht…
best wüsches
oberleiner
gajel
July 13, 2011, 10:22am
11
Als Beispiel: Ein Lenkrad kann in mehrere Autos passen und ist daher in den verschiedenen Kategorien (Auto-Modellen) hinterlegt. Kurz gesagt der Kunden soll in der Details.tpl sehen für welche Auto-Modelle das Lenkrad auch noch passt ;).
Grüße Gajel
Harsam
October 23, 2013, 4:20pm
13
Hallo,
hat das schon jemand für die aktuelle Oxid 4.7 bzw. 4.8 umgeschrieben bzw. am laufen? Habe $product durch $oView ersetzt,erhalte so nur einen redirect auf die Startseite:
<div><ul id="passend">
[{foreach from=$oView->getCategoryIds() item=sCatId}]
[{assign var=oCat value='oxcategory'|@oxNew}]
[{capture}][{$oCat->load($sCatId)}][{/capture}]
<li class="modelle"><a href="[{$oCat->getLink()}]">[{$oCat->oxcategories__oxtitle->value}]</a></li>
[{/foreach}]
</ul>
</div>
So ist es richtig und funktioniert in details.tpl und productmain.tpl unter Oxid 4.7:
<ul id="passend">
[{foreach from=$oDetailsProduct->getCategoryIds() item=sCatId}]
[{assign var=oCat value='oxcategory'|@oxNew}]
[{capture}][{$oCat->load($sCatId)}][{/capture}]
<li class="modelle"><a href="[{$oCat->getLink()}]">[{$oCat->oxcategories__oxtitle->value}]</a></li>
[{/foreach}]
</ul>
wbtl
May 31, 2019, 3:44pm
14
Hallo,
ich habe aktuell das gleiche Problem mit Oxid 6.1. Hier sollen auf der Detail-Seite alle dem Artikel zugewiesenen Kategorien aufgelistet werden. Bin schon seit einigen Stunden auf der Suche nach einer Lösung und komme einfach nicht weiter. Alle Code-Zeilen, welche ich bereits gefunden habe, beziehen sich auf ältere Oxid Versionen und funktionieren bei mir nicht.
Offenbar muss es zum Auslesen der Category-IDs auch in Oxid 6.1 eine entsprechende Klasse geben: https://docs.oxid-esales.com/sourcecodedocumentation/6.1.0/class_oxid_esales_1_1_eshop_community_1_1_application_1_1_model_1_1_article.html#a1f54e9fa7ba4c0badde87c4c38921681
Meine Entwicklerkenntnisse sind aber nicht tief genug um zu verstehen wie ich die Klasse nun in der details.tpl nutzen kann.
Wäre super, wenn mir Jemand einen hilfreichen Tipp geben könnte.
Beste Grüße
Tommy
Der Code für OXID 4.7 aus dem letzten Post funktioniert prinzipiell auch in 6.1, z.B. in productmain.tpl oder fullproductinfo.tpl.
[{foreach from=$oDetailsProduct->getCategoryIds() item=sCatId}]
[{assign var="oCat" value='oxcategory'|@oxNew}]
[{ if $oCat->load($sCatId) }]<li class="modelle"><a href="[{$oCat->getLink()}]">[{$oCat->oxcategories__oxtitle->value}]</a></li>[{/if}]
[{/foreach}]
1 Like
wbtl
June 12, 2019, 4:02pm
17
Super! Damit hat es funktioniert. Vielen vielen Dank