我使用以下代码片段允许用户设置将显示在主页上的特色产品,但我需要对其进行扩展,以便他们也可以指定项目的排序顺序 . 默认情况下,它按照添加到Magento的顺序显示产品 .
为此,我创建了一个名为“sort_order”的属性,允许用户添加一个数值,该值将决定主页上显示的排序顺序 . 例如,如果我有4个产品,那么排序顺序可以显示如下
product1 - 排序顺序3产品2 - 排序顺序1产品3 - 排序顺序2产品4 - 排序顺序4
我整个上午一直在努力让这个工作 . 我假设我需要创建一个某种类型的数组,然后允许我按照属性“sort_order”的顺序对产品进行排序,但我没有得到任何地方
如果有人可以提供一些建议,我将非常感激
<div id="home-featured">
<h2><?php echo $this->__('Featured') ?></h2>
<?php
// some helpers
$_helper = $this->helper('catalog/output');
$storeId = Mage::app()->getStore()->getId();
$catalog = $this->getLayout()->createBlock('catalog/product_list')->setStoreId($storeId);
// get all products that are marked as featured
$collection = Mage::getModel('catalog/product')->getCollection();
$collection->addAttributeToSelect('featured_product');
$collection->addFieldToFilter(array(
array('attribute' => 'featured_product', 'eq' => true),
));
// if no products are currently featured, display some text
if (!$collection->count()) :
?>
<p class="note-msg"><?php echo $this->__('There are no featured products at the moment.') ?></p>
<?php else : ?>
<div class="category-products">
<?php
$_collectionSize = $collection->count();
$_columnCount = 4;
$i = 0;
foreach ($collection as $_product) :
$_product = Mage::getModel('catalog/product')->setStoreId($storeId)->load($_product->getId());
?>
<article>
<div class="product-image"><a href="<?php echo Mage::helper('fullurl')->getFullProductUrl($_product); ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" ><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->keepFrame(false)->resize(170); ?>" width="170" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a></div>
<div class="featured-info">
<h3><a href="<?php echo Mage::helper('fullurl')->getFullProductUrl($_product); ?>" title="<?php echo $this->stripTags($_product->getName(), null, true) ?>"><?php echo $_helper->productAttribute($_product, $_product->getName(), 'name') ?></a></h3>
<p><?php echo $_helper->productAttribute($_product, $_product->getShortDescription(), 'short_description ') ?></p>
<span class="link-dreambuilder"><a href="<?php echo $this->helper('wishlist')->getAddUrl($_product) ?>" ><?php echo $this->__('+ Add to Dream Builder') ?></a></span> </div>
</article>
<?php endforeach ?>
</div>
<?php endif ?>
</div>
1 回答
无论如何,这里是属性排序函数..