Magento – jak wyświetlić promowane produkty.

Dodane przez | 4 lipca 2011 o godzinie 16:02 | 5 komentarzy | Magento, Tutoriale | Tagi: ,

Sklepy, również te internetowe, starają się wyeksponować niektóre produkty chociażby dla szybszego ich sprzedania. W tym celu na stronie tworzone są obszary, gdzie takie produkty są promowane. System Magento w swojej podstawowej postaci nie oferuje niestety takich mechanizmów, natomiast posiada kilka nieużywanych bloków odpowiadających za listę produktów. Mogą one okazać się bardzo przydatne, jeśli tylko w odpowiedni sposób je dostosujemy.

Jednym z nich jest blok, który może posłużyć do wyświetlenia promowanych produktów a zlokalizowany jest w:

./app/code/core/Mage/Catalog/Block/Product/List/Promotion.php

W zasadzie jest to wbudowana funkcjonalność produktu, oparta i reagująca na atrybut „promowane”. Zatem aby wszystko zaczęło działać prawidłowo należy, zgodnie z instrukcją poniżej, taki atrybut utworzyć w:

Catalog>>Attributes>>Manage Attributes>>Create New Attribute

Teraz musimy dodać utworzony atrybut do zestawu atrybutów używanych w sklepie. W tym celu musimy przejść do:

Catalog>>Attributes>>Manage Attribute Sets

Od tej chwili, edytując lub dodając nowy produkt, w grupie General pojawi się atrybut Promotion, który należy ustawić jeśli chcemy dodać ten produkt do promowanych.

Pozostało jeszcze stworzyć nowy plik promotion.phtml i umieścić w nim poniższy kod:

[cc lang=”php”] < ?php $_productCollection=$this->getLoadedProductCollection();
$_helper = $this->helper(‚catalog/output’);
?>

< ?php $i=0; foreach ($_productCollection as $_product): ?>

< ?php endforeach ?>
[/cc]

Następnie plik wzbogacamy o odpowiednie style i kopiujemy do:

./app/design/frontend/default/{twoj_szablon}/template/catalog/product/

Ostatnim etapem pracy jest wyświetlenie produktów oznaczonych jako promowane w jednym z bloków strony. Aby tego dokonać należy do pliku:

./app /design/frontend/default/{twoj_szablon}/layout/catalog.xml

dodać w odpowiednie miejsce poniższego kodu:

[cc lang=”xml”]

[/cc]

O autorze:

Piotr

Facet, który z zawodu jest prezesem. Większość czasu spędza na poskramianiu platformy magento i przygotowywaniu materiałów do druku. Najchętniej pracuje ułożony w pozycji horyzontalnej na kanapie. Perfekcjonista w każdym calu.

5 komentarzy

  1. Mariusz (8 rok temu)

    Błąd – $this-/>helper powinno być $this->helper ale i tak nie dzialczy 🙁

  2. Seb (8 rok temu)

    działa tylko wyświetla się w kategori

  3. Tomek (8 rok temu)

    Po poprawieniu $this-/>helper na $this->helper u mnie działa (1.5.1.0).

    W pliku phtml tag powinien znajdować się poza pętlą foreach.

  4. Tomek (8 rok temu)

    Po poprawieniu $this-/>helper na $this->helper u mnie działa (1.5.1.0).

    W pliku phtml tag „ul” powinien znajdować się poza pętlą foreach.

  5. Piotr (8 rok temu)

    Dzięki za wychwycenie błędu, kod został już poprawiony i przy okazji przetestowany na magento w wersji 1.6.2.0, działa bez zarzutu.

Komentarze → Tomek

© 2011 Web Designer Magazine. All rights reserved.