我有这个php文件featured.phtml,它加载来自特定类别的产品
<?php $_productCollection=$this->getLoadedProductCollection() ?>
<?php if(!$_productCollection->count()): ?>
<p class="note-msg"><?php echo $this->__('There are no products matching the selection.') ?></p>
<?php else: ?>
<?php // Grid Mode ?>
<?php $_collectionSize = $_productCollection->count() ?>
<?php $_columnCount = 6; ?>
<?php $i=0; foreach ($_productCollection as $_product): ?>
<?php if ($i++%$_columnCount==0): ?>
<ul class="featured-products-grid">
<?php endif ?>
<li class="hreview-aggregate hproduct item<?php if(($i-1)%$_columnCount==0): ?> first<?php elseif($i%$_columnCount==0): ?> last<?php endif; ?>">
<a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->getImageLabel($_product, 'small_image') ?>" class="url home-product-image"><img class="photo fn" src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="135" height="135" alt="<?php echo $this->htmlEscape($this->getImageLabel($_product, 'small_image')) ?>" /></a>
<h2 class="item fn home-product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_product->getName() ?>"><?php echo $this->htmlEscape($_product->getName()) ?></a></h2>
<?php if($_product->getRatingSummary()): ?>
<?php echo $this->getReviewsSummaryHtml($_product, 'short') ?>
<?php endif; ?>
<?php echo $this->getPriceHtml($_product, true) ?>
<div class="actions">
<?php if($_product->isSaleable()): ?>
<button id="button" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" role="button" aria-disabled="false" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"><span class="ui-button-text"><?php echo $this->__('Add to Cart') ?></span></button>
<?php else: ?>
<p class="availability out-of-stock"><span><?php echo $this->__('Out of stock') ?></span></p>
<?php endif; ?>
</div>
</li>
<?php if ($i%$_columnCount==0 || $i==$_collectionSize): ?>
</ul>
<?php endif ?>
<?php endforeach ?>
<?php endif; ?>
我在magento admin的主页上将此代码称为:
{{block type =“catalog / product_list”category_id =“14”template =“catalog / product / featured.phtml”}}
所以基本上它会查看category_id = 14并将所有产品加载到featured.phtml模板中
我的问题:
如何修改featured.phtml以便它只是随机选择5个产品并以随机顺序显示它们?
感谢您的任何建议
答案 0 :(得分:0)
要显示简单的随机产品,您可以使用此代码。 通过使用此代码,您可以显示随机产品。但是如果要显示随机产品特定类别,则还可以添加此类别的属性过滤器。
$collection = Mage::getResourceModel('catalog/product_collection');
Mage::getModel('catalog/layer')->prepareProductCollection($collection);
$collection->getSelect()->order('rand()');
$collection->addStoreFilter();
$this->setProductCollection($collection);
return parent::_beforeToHtml();
//below code to display output
if (($_products = $this->getProductCollection())):
echo $_product->getSku(); // just to display sku
endif;
在上面的代码中,这只会显示产品sku。你只需要为产品名称,图像,价格等编写代码。
希望它会对你有所帮助。感谢