Auf der Startseite (Homepage) können auch speziell ausgewählte Produkte angezeigt werden.
Mit einem JA/NEIN Schalter werden die auserwählten Produkte in der Adminverwaltung auf JA gestellt und erscheinen dann auf der Startseite. Die Umsetzung ist schnell erledigt da magento bereits eine Abfragedatei (promotion.php) bereitstellt.
1. Zuerst muss das JA/NEIN Schalter Attribute angelegt werden.
Admin -> Katalog -> Attribute -> Attribute verwalten
Oben rechts auf Neues Attribute klicken
Attributcode: promotion
Geltungsbereich: Global (oder was immer Sie möchten)
Katalog Eingabetyp für Shopbesitzer: JA/NEIN
Die restlichen Felder nicht ändern.
Nun links auf Bezeichnungen/Optionen verwalten klicken und
im Admin Feld Promotion eingeben.
Oben auf Attribute speichern klicken.
2. Nun muss das neue Attribute noch den Attributsets zugeordnet werden.
Admin -> Katalog -> Attribute -> Attributsets verwalten
Als Beispiel das Default Attributset:
Klicken Sie auf das Default Set.
Rechts sehen Sie die noch nicht zugewiesenen Attribute, darunter auch das promotion Attribute.
Klicken Sie auf das Promotion Attribute und ziehen es mit gedrückter Maustaste in das mittlere Feld, z.B. unterhalb von sku.
Lassen Sie die Maustaste los und das Attribute ist nun zugeordnet (wenn es im mittlerem Feld zu sehen ist und nicht wieder nach rechts zurückspringt). Wenn es wieder zurückspringt, einfach noch einmal versuchen, es wird schon klappen.
Dann auf Attributset speichern oben rechts klicken.
3. Die Homepage / Startseite
Nun wird noch die Ausgabe Anweisung in die Homepage (Startseite) eingefügt.
Admin -> CMS
{{block type='catalog/product_list_promotion' template='catalog/product/list.phtml'}}
Die Block Type Anweisung zeigt nun auf die magento promotion.php im Verzeichnis app/code/core/Mage/Catalog/Block/Product/List (diese Selektiert die Produkte mit dem Attribute-Schalter JA).
Die Template Anweisung zeigt auf die Standard list.phtml im Verzeichnis app/design/frontend/default/IhrTheme/template/catalog/product.
Möchten Sie die list.phtml modifizieren kopieren Sie die list.phtml unter einen neuen Namen, z.B. listpromotion.phtml.
Die listpromotion.phtml können Sie nun nach Ihren Vorstellungen abändern.
Die neue Datei (listpromotion.phtml) muss dann auch in der CMS-Ausgabe (Home Page) angeglichen werden.
{{block type=’catalog/product_list_promotion’ template=’catalog/product/listpromotion.phtml‘}}
4. Produkte auswählen
Admin -> Katalog -> Produkte verwalten
Das gewünschte Produkt auswählen und den Promotion Schalter auf JA setzten.
Speichen und ggf. weitere Produkte auswählen.
Das war es auch schon.
Im Admin die caches leeren und auf der Startseite erscheinen die auserwählten Produkte.
Stefan Pröhl – robin2160
mageintern.de
Hier nun auch Teil 2:
Magento: Ausgewählte Produkte auf beliebigen CMS-Seiten anzeigen
Hallo hab alles nach deine Anleitung gemacht, leider werden alle artikel angezeigt?
[Antwort]
Ist es möglich den code dahingehend zu erweitern, das z.B nach dem Preis absteigend sortiert wird?
Hier nochmal der Aufruf:
{{block type=’catalog/product_list_promotion’ template=’catalog/product/list.phtml’}}
[Antwort]
mageintern - robin2160 Antwort vom Juni 18th, 2011 07:48:
Hallo David,
das ist ganz einfach möglich.
Kopiere die Datei Promotion.php von app/code/core/Mage/Catalog/Block/Product nach app/code/local/Mage/Catalog/Block/Product.
Die Verzeichnisse Mage/Catalog/Block/Product im local Ordner müssen evtl. angelegt werden. wenn sie noch nicht vorhanden sind,
Dann in der Promotion.php die Zeile ->addAttributeToSort(‘price’, ‘asc’) unterhalb von ->addAttributeToFilter(‘promotion’, ’1′) einfügen.
Caches leeren, fertig.
VG Stefan Pröhl – mageintern.de
[Antwort]
1.5.1.0: Bei mir führt das dazu, dass sämtlicher Content verschwindet. Die Website “außen rum” ist OK.
[Antwort]
Vielen Dank! Super Tutorial! Alles sehr einfach und ausführlich erklärt.
[Antwort]
Vielen Dank für diesen sehr gut erklärten und hilfreichen Artikel!
[Antwort]
oder als Einzelproduktansicht / view.phtml – ohne das eine Fehlermeldung kommt?
[Antwort]
Kann man das Ganze auch als Grid anzeigen lassen?
[Antwort]