nachdem ich im englischen Forum leider keine Antwort bekommen habe, versuche ich es hier nochmal. Mein Problem ist folgendes:
Ich habe Artikel mit (mehrdimensionalen) Varianten. Ein Elternartikel ist garnicht bestellbar. Ich würde gerne auf der “List” Seite auf die Variante verlinken anstatt auf den Elternartikel. Kann mir jemand von euch sagen, wie ich das machen kann?
Wenn du das Basic-Theme hast, dann ist unten die Variantenauswahl schon so wie du es dir wünschst. Du kannst entweder das ganze Teil nach oben über die große Artikelansicht legen oder die Funktionalität nach oben in die große Ansicht verpflanzen, da gibt es hier einige Threads dazu aber keine fertige Anleitung.
anschaue, sind die Varianten in dem Array vorhanden.
Aber ich brauche den Zugriff in der inc/product.tpl. Kann mir jemand sagen, woran das liegt? Muss ich die Varianten zuerst irgendwie laden? Oder was kann sonst der Grund dafür sein?
Also… Wenn ich alle Artikel einer Kategorie sehe, dann werden die Inhalte ja mit Hilfe der inc/product.tpl dargestellt. Momentan ist es so, dass Link zu dem Hauptartikel führt. Was ich haben möchte ist, dass ich in irgendeiner Variante lande statt beim Hauptartikel.
Auf die Varianten kann ich mit $product->getMdVariants() oder $product->getMdSubvariants() zugreifen. Allerdings liefern mir diese Methoden jeweils 0 Varianten in der product.tpl zurück. In der details.tpl geht alles.
Meine Idee für die Umsetzung war, einfach das Array durchzuitterieren und den Link zu irgendeiner Variante zu speichern.
[QUOTE=LL0rd;56977]Also… Wenn ich alle Artikel einer Kategorie sehe, dann werden die Inhalte ja mit Hilfe der inc/product.tpl dargestellt. Momentan ist es so, dass Link zu dem Hauptartikel führt. Was ich haben möchte ist, dass ich in irgendeiner Variante lande statt beim Hauptartikel.
Auf die Varianten kann ich mit $product->getMdVariants() oder $product->getMdSubvariants() zugreifen. Allerdings liefern mir diese Methoden jeweils 0 Varianten in der product.tpl zurück. In der details.tpl geht alles.
Meine Idee für die Umsetzung war, einfach das Array durchzuitterieren und den Link zu irgendeiner Variante zu speichern.[/QUOTE]
Hi LLord,
ich glaube du hast da einen kleinen Denkfehler. Wenn du dir die list.tpl mal ansiehst dann wirst du merken das dort die Produkte der Kategorie abgerufen werden und das Array in dem die Produkte gespeichert sind wird mit einer foreach durchlaufen. Für jedes Produkt wird dann in der schleife die inc_product.tpl aufgerufen und per Parameter Werte übergeben.
In list.tpl sind die Varianten verfügbar. Vielleicht hilft es dir weiter wenn du die Varianten abruft und die produktwerte mit denen die foreach zum darstellen der Produkte durchlaufen wird, durch die Daten der Varienaten ersetzt.
Du könntest auch einen zusätzlichen Parameter an die inc_product.tpl innerhalb der foreach in der list.tpl senden indem du die Variante festlegst in der das Produkt erstellt werden soll.
Das ist der Code aus dem Basic Template. Wie du schon sagtest, wird dort ein Array mit den Artikeln abgerufen und mit Hilfe der inc/product.tpl dargestellt.
Ich habe jetzt den Code etwas ergänzt, sodass an dieser Stelle die Varianten ausgelesen werden sollen. Am Resultat hat sich allerdings nichts geändert. Was ja eigentlich auch logisch ist, denn die Variable $actionproduct landet ja als $product in der inc/product.tpl. Kannst du mir bitte deshalb genauer sagen, wo denn mein Denkfehler ist?
[QUOTE=LL0rd;56977]
Auf die Varianten kann ich mit $product->getMdVariants() oder $product->getMdSubvariants() zugreifen. Allerdings liefern mir diese Methoden jeweils 0 Varianten in der product.tpl zurück. In der details.tpl geht alles. [/QUOTE]
Probiers mal mit getVariantList: