2010-11-28 5 views
1

In Magento können Sie ein Bild zu einer Kategorie, die über Produkte angezeigt wird. Ist es möglich, stattdessen das Kategoriebild als Standardproduktbild zu verwenden? Wenn ein Produkt ein Bild hat, wird es es verwenden, aber wenn es nicht und seine erste Kategorie ein Bild hat, wird es es verwenden.Verwenden Sie die Kategorie Standardbild als Produkte Standardbild

Der einfachste Weg besteht darin, den Produktblock und die Vorlage zu überschreiben und die Kategorie und das Bild für jedes Produkt ohne ein Bild zu finden, das jedoch viele Abfragen hinzufügen wird. Für die Kategorieansicht kann ich eine Abfrage erstellen, aber für das Suchergebnis muss ich eine Abfrage pro Produkt erstellen, da jedes Produkt einer anderen Kategorie angehören kann.

Gibt es einen besseren Weg, es zu tun? Vielleicht mit benutzerdefinierten Kategorie Design oder überschreiben Indizes?

Dank

Antwort

1

Der Helfer in der Regel verwendet, um jene Bilder (Mage_Catalog_Helper_Image) zu erzeugen, hat eine Methode placeholder($filename), die den Platzhalter Bild-URL setzen soll. Sie sollten in der Lage sein, dieses Bild vor der Anzeige der Kategorieprodukte so einzustellen, dass das Kategoriebild als Platzhalterbild verwendet wird.

Hoffe, dass hilft!

Danke, Joe

+0

Ich glaube nicht, getPlaceholder wird jemals in Mage_Catalog_Helper_Image verwendet. Wahrscheinlich ein Bug oder ein schlechter Codierungsstil. Ich habe __toString überschrieben. Wenn $ this-> getProduct() -> getData ('image') nicht definiert ist, verwende ich die Kategorie image falls gesetzt. Im ersten Anruf speichere ich alle Kategorien Bilder in einem Anruf. Danke, dass du mich in die richtige Richtung geführt hast. – pablo

+0

nette Antwort !!! –

1

Joseph und Pablo zu vervollständigen Antwort auf Magento 1.9.1, es in der __toString() -Methode des Helfers verwendet wird. Beachten Sie, dass $ placeholder beim Aufruf von $ this-> helper ('catalog/image') -> Platzhalter ($ placeholder) ein relativer Dateipfad im Verzeichnis skin ist, so dass er kaum für Ihr Problem verwendet werden kann Ich werde mit Ihrer Lösung machen :))

+0

Magento 1.9.1 ??????? Bist du sicher mit der Version? –

+0

Entreprise 1.9;) – haltabush

+0

Du bist der Beste! –

Verwandte Themen