TOP Produkte auf der Startseite anzeigen (Featured products)

      TOP Produkte auf der Startseite anzeigen (Featured products)

      Wie versprochen das fertige Modul.

      Vorbereitungen
      Als erstes wird ein neues Attribut (Ja / Nein Optionsschalter) "home_page_featured" angelegt und zum aktuellen Attributset hinzugefügt. Sobald das Set gespeichert wurde können wir den Schalter für unsere TOP-Produkte auf "ja" setzen.

      Als nächstes wird über

      Quellcode

      1. CMS => SEITEN VERWALTEN => Home Page
      auf der Startseite folgendes Snippet eingefügt:

      Quellcode

      1. {{block type="catalog/product_homepage" template="catalog/product/homepage.phtml"}}
      Das Ganze sollte am besten über folgendem Tag stehen:

      Quellcode

      1. <div class="box best-selling">
      Cache leeren nicht vergessen!

      Dateien kopieren
      Abschließend werden alle Dateien aus dem Anhang auf den Server geladen.

      Fertig
      Die Produkte mit der Option "Ja" sollten jetzt auf der Startseite angezeigt werden.
      Dateien
      • featured.zip

        (6,11 kB, 369 mal heruntergeladen, zuletzt: )
      Magento Hosting | Cloud Server | Shopware Hosting | Elasticsearch Hosting
      Unsere Hosting-Lösungen nutzen ultraschnelle SSDs und sind jederzeit skalierbar.
      Hallo,

      ich verwende die Version 1.0 und sie funktioniert gut.
      Würde aber gerne in homepage.phtm den Link zum Produkt so verändern, dass die Kategorie mit in der URL angezeigt wird:

      statt:

      www.meineseite.de/mein_produkt.html

      möchte ich:

      www.meineseite.de/meine_kategorie/mein_produkt.html

      im href des links ausgeben haben. Bis jetzt sieht das im Template homepage.phtml so aus:

      PHP-Quellcode

      1. <a href="<?php echo $_product->getProductUrl() ?>"
      müsste also irgendwie so aussehen:

      PHP-Quellcode

      1. <a href="<?php echo $_product->getCategoryUrl() . "/" . $_product->getName() . ".html" ?>"


      Könnt ihr mir da helfen?

      Grüße, Mexx
      Die URL wird im Artikel selbst festgelegt. Ich gehe davon aus, dass Du in den betreffenden Artikel nfeste URLs bereits vorgegeben hast, deshalb werden sie auch genau so über das Modul ausgeworfen (zumindest ist das bei mir so). Wenn das so ist, dann kann man das auch nicht ändern, weil der Artikel ja nur über die vorgegebene URL aufgerufen werden kann.

      Poste hier doch einmal Deine Shop-URL, damit ich den Shop aufrufen kann.


      Gruß
      Ingo
      Ich habe ein paar Versuche gemacht Produkte auf der Homepage zu postieren und habe einfach im CMS->Manage Pages->Home Page eingefügt

      Quellcode

      1. {{block type="catalog/product_list" category_id="XXX" template="catalog/product/list.phtml"}}


      Für XXX habe ich die Kategorie ID gesetzt und kann somit einfach und jederzeit über das Backend Produkte hinzufügen und rausnehmen. Diese Kategorie habe ich as "Inactive" gesetzt damit die nicht im Menü erscheint.

      Bin soweit mit dem Ergebniss zufrieden, hat das Modul hier mehr vorteile oder ist es gleich, nur über einen anderen weg?
      So, hab die homepage.phtml mal für das Modern Theme angepasst. Nu werden die Artikel auch in drei Spalten angezeigt und nicht mehr zerhackt.

      Allerdings hätte ich gerne noch die Funktion drin, dass die Artikel auf einen festen Wert beschränkt werden und dann halt rotieren. Ist das möglich ?

      Ich möchte maximal 6 neue Produkte auf der Startseite, die im Zufallsprinzip auftauchen.

      Jemand ne Idee ?
      Dateien

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ilang“ ()

      Daran solls ja nicht scheitern :D

      HTML-Quellcode

      1. <ABOVE><?php
      2. /**
      3. * Magento
      4. * @category default_default
      5. * @package Mage
      6. * @copyright Copyright (c) 2008 Irubin Consulting Inc. DBA Varien
      7. */
      8. ?>
      9. <?php if (($_products = $this->getProductCollection()) && $_products->getSize()): ?>
      10. <div class="listing-type-grid catalog-listing padder" style="background: none;">
      11. <?php $_collectionSize = $_products->count() ?>
      12. <table cellspacing="0" class="generic-product-grid" id="product-list-table">
      13. <?php $i=0; foreach ($_products as $_product): ?>
      14. <?php if($i++%3==0): ?>
      15. <tr>
      16. <?php endif; ?>
      17. <td>
      18. <p class="product-image">
      19. <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->htmlEscape($_product->getName()) ?>">
      20. <img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(170, 170); ?>" width="170" height="170" alt="<?php echo $this->htmlEscape($_product->getName()) ?>" />
      21. </a>
      22. </p>
      23. <h5><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->htmlEscape($_product->getName()) ?>"><?php echo $this->htmlEscape($_product->getName()) ?></a></h5>
      24. <?php if($_product->getRatingSummary()): ?>
      25. <?php echo $this->getReviewsSummaryHtml($_product, 'short') ?>
      26. <?php endif; ?>
      27. <?php echo $this->getPriceHtml($_product, true) ?>
      28. <?php if($_product->isSalable()): ?>
      29. <button class="form-button" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"><span><?php echo $this->__('Add to Cart') ?></span></button>
      30. <?php else: ?>
      31. <div class="out-of-stock"><?php echo $this->__('Out of stock') ?></div>
      32. <?php endif; ?>
      33. <p class="add-to">
      34. <?php if ($this->helper('wishlist')->isAllow()) : ?>
      35. <a href="<?php echo $this->helper('wishlist')->getAddUrl($_product) ?>" class="link-cart"><?php echo $this->__('Add to Wishlist') ?></a>
      36. <?php endif; ?>
      37. <?php if($_compareUrl=$this->getAddToCompareUrl($_product)): ?><br/>
      38. <a href="<?php echo $_compareUrl ?>"><?php echo $this->__('Add to Compare') ?></a>
      39. <?php endif; ?>
      40. </p>
      41. </td>
      42. <?php if($i%3==0 || $i==$_collectionSize): ?>
      43. </tr>
      44. <?php endif; ?>
      45. <?php endforeach ?>
      46. </table>
      47. <script type="text/javascript">decorateGeneric($$('.grid-row'), ['last', 'odd', 'even']);</script>
      48. </div>
      49. <?php endif; ?>
      Vielen Dank! Folgendes müsste funktionieren (ungetestet):

      PHP-Quellcode

      1. <table cellspacing="0" class="generic-product-grid" id="product-list-table">
      2. $_products = array_rand($_products, 6);
      3. <?php $i=0; foreach ($_products as $_product): ?>


      de.php.net/manual/de/function.array-rand.php
      Magento Hosting | Cloud Server | Shopware Hosting | Elasticsearch Hosting
      Unsere Hosting-Lösungen nutzen ultraschnelle SSDs und sind jederzeit skalierbar.
      Laut Magento Forum soll die Funktion mit Magento Probleme haben, als Alternative wurde folgendes genannt:

      PHP-Quellcode

      1. <table cellspacing="0" class="generic-product-grid" id="product-list-table">
      2. shuffle($_products);
      3. <?php $i=0; foreach ($_products as $_product): ?>
      oder als fertige (kostenpflichtige) Extension: Magento Featured Products Extension

      Sollte das auch nicht funktionieren poste bitte einmal die Ausgabe von

      PHP-Quellcode

      1. var_dump($_products);
      Magento Hosting | Cloud Server | Shopware Hosting | Elasticsearch Hosting
      Unsere Hosting-Lösungen nutzen ultraschnelle SSDs und sind jederzeit skalierbar.