Ich arbeite am Aufbau eines neuen Magento-Shops (dies ist mein erster mit Magento).
Ich möchte das Aussehen eines vorhandenen Shops für meine Produktseiten zumindest in Bezug auf das Layout nachbilden:
http://www.panamericantool.com/cobalt-drills/drill-stops.html
http://www.panamericantool.com/screw-driver-bits/paint-cutters.html
Ich habe herausgefunden, dass ich gruppierte Produkte mit einfachen Produkten verwenden muss, um die Art von Dingen zu erstellen, nach denen ich suche.
In den obigen Beispielen hat jedes Produkt separate Attribute. Ich gehe davon aus, dass diese über verschiedene Attributgruppen in Magento erfolgen.
Wie werden jedoch die verschiedenen Tabellenüberschriften / -werte im Thema angezeigt?
Ich weiß, dass ich es tun kann ->getAttributeName()
oder ->getAttribute('attribute_code')
in der grouped.phtml
Datei, aber dies würde zu einer enormen Menge führen if (->getAttributeName() != '')...
und ich müsste die Vorlage ändern, wenn ich weitere hinzufüge.
Ich bin mir sicher, dass es eine Möglichkeit gibt, alle Attribute abzurufen und sie zu durchlaufen, aber wie würden Sie dann zwischen dem meta_description
Attribut (das auch von der $_product->getData()
Methode zurückgegeben wird) und einem Attribut unterscheiden, das in der Tabelle aufgeführt werden soll?
Wie könnte ich etwas erreichen, das dem entspricht, was sie haben?
Ich bin auch besorgt über die Leistung des Shops, der zum Start 5.000 Produkte haben wird, und wächst auf vielleicht 25.000 bis 30.000, wenn wir unseren Restbestand hinzufügen. Viele davon benötigen unterschiedliche Attribute, aber ich schätze, ich könnte Attribute zwischen Attributgruppen ohne zu viele Leistungsprobleme gemeinsam nutzen.
Aktualisieren:
Ich habe weiter damit herumgespielt. Ich habe festgestellt, dass dies alle Produktattribute enthält. Ich kenne jedoch immer noch keine einfache Möglichkeit, bestimmte Werte in einer gruppierten Produkttabelle anzuzeigen.
$attributes = Mage::getModel('catalog/product_attribute_api')->items($_product->getAttributeSetId());
foreach($attributes as $_attribute){
print_r($_attribute);
}
Antworten:
Dies sollte das sein, was Sie brauchen:
quelle
Warum nicht ein Attribut erstellen, das angibt, welche Attribute angezeigt werden sollen?
Am Ende habe ich ein Modul erstellt, das den Wert von zwei Textattributen für gruppierte Produkte lädt, die Attributcodezeichenfolgen sind. Im Wesentlichen ein Helfer, der diese Attributlistenzeichenfolge explodiert und sie durchläuft, um die Attributdaten der zugehörigen Produkte zu laden.
Erstellen Sie ein Attribut, das ich meins genannt habe:
grouped_attr_array
Fügen Sie das Attribut dem im Administrator festgelegten Designattribut des gruppierten Produkts hinzu und dann als durch Semikolons getrenntes Feld in den Produktdaten
torque_range;torque_increments;torque_accuracy
Ich habe diesen Code aus meinem Modul gezogen. Das Laden oder Ausblenden von Standardattributen basierend auf einem Attributwert wird weiter ausgeführt, und das Modul ist etwas komplexer. Um die in der Tabelle gezeigten Daten zu erhalten, sind dies einige der Kernfunktionen. Hoffentlich gibt es Ihnen eine Idee, auf der Sie aufbauen können. Dies verwendet Magento 1.9.2
Der Helfer des Moduls:
Abrufen von Daten vom Helfer in groupedproduct.phtml
TH's
TD ist der Tisch
Ich möchte die Art und Weise der Auswahl dieses Attributs anhand der verfügbaren Attribute des Geschäfts erläutern. Vielleicht gibt es auch einen viel besseren Weg, dies zu tun. Ich bin noch nicht dazu gekommen.
quelle