Wie erhalte ich zufällige Cross-Sell-Produkte?
-
11-12-2019 - |
Frage
Dies ist der Code, der die Kreuzprodukte generiert:
<?php $_helper = $this->helper('catalog/output'); ?>
<?php
$_product = $this->getProduct();
// echo get_class($this);
?>
<?php if($_crossSellProducts = $_product->getCrossSellProducts()): ?>
<div class="crosssell">
<h2><?php echo $this->__('Suntem mandri sa va prezentam clientii TRENDfurniture:') ?></h2>
<ul id="crosssell-products-list">
<?php foreach ($_crossSellProducts as $_item): ?>
<?php
$_item = Mage::getModel('catalog/product')->load($_item->getId());
?>
<li class="item">
<a class="product-image" href="<?php echo $_item->getProductUrl() ?>" title="<?php echo $this->htmlEscape($_item->getName()) ?>">
<img src="<?php echo $this->helper('catalog/image')->init($_item, 'thumbnail'); ?>" alt="<?php echo $this->htmlEscape($_item->getName()) ?>" />
</a>
</li>
<?php endforeach; ?>
</ul>
<script type="text/javascript">decorateList('crosssell-products-list', 'none-recursive')</script>
</div>
<?php endif;?>
Ich habe versucht zu verwenden:
$_item ->getSelect()->order(new Zend_Db_Expr('RAND()'));
$_item ->setPage(1, 4);
aber ohne Ergebnis. Dies ist das Ergebnis der get_class Funktion: Mage_Catalog_Block_Product_View
Lösung
Erstellen Sie eine Funktion auf Ansicht.php generasacodicetagpre.
und ändern: generasacodicetagpre.
bis generasacodicetagpre.
Andere Tipps
Um benutzerdefinierte Logik für Cross-Selling-Produkte zu implementieren, können Sie die Methode getCrossSellProducts überschreiben oder eine Methode aus Ihrer eigenen Klasse aufrufen, die die ganze Magie ausführt.
Wenn Sie nur die Standardlogik verwenden, die Produkte jedoch jedes Mal nach dem Zufallsprinzip sortieren müssen, müssen Sie die Sortierung nach Rand hinzufügen Vor Die Sammlung wird geladen, nicht danach, da sie keine Auswirkung hat.
Bearbeiten:Wenden Sie basierend auf Ihrem Code Sortierung und Einschränkung an $_crossSellProducts
vor der Schleife.
Die Cross-Sell-Produktsammlung kann mit diesem Code ergriffen werden: generasacodicetagpre.
Sie würden dann verwenden, um die zufällige Reihenfolge und die Seitengröße festzulegen: generasacodicetagpre.
edit: Sie können dann über diese Produkte wie so: iterieren. generasacodicetagpre.