最新消息:Excel无乱码转CSV,由于工作原因很少更新博客和回复大家的评论,非常抱歉。

Magento 首页显示销售排行

关于magento中如何实现销售排行,热门销售,热销产品等等这样的文章网上有很多。这近正好有一个项目需要做这个,于是把代码分享出来。

一般是两种实现方式,一种是真实的数据库数据;

一种是人工干预的通过新建分类来实现的;

这两种方法各有优劣,这里我们暂且不谈;

可惜的是都是获取整站销售排行的,如果我们要获取某个分类的销售排行,如何实现?

调用方法
{{block type=”core/template” show_total=”21″category_id=”29″template=”catalog/product/bestseller.phtml”}}

showtotal是总共显示多少条数据,category_id是显示某个分类下的产品

$totalPerPage= ($this->show_total) ? $this->show_total : 6;
$counter= 1;
$catalogid=($this->category_id) ? $this->category_id : 29;
$_featcategory= Mage::getModel('catalog/category')->load($catalogid);
$visibility= array(
Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH,
Mage_Catalog_Model_Product_Visibility::VISIBILITY_IN_CATALOG
);
$storeId= Mage::app()->getStore()->getId();
$_productCollection= Mage::getResourceModel('reports/product_collection')
->addAttributeToSelect('*')
->addOrderedQty()
->addAttributeToFilter('visibility', $visibility)
->addCategoryFilter($_featcategory)
->setOrder('ordered_qty', 'desc');

核心代码就是最后两句了,通过分类ID来过滤分类,通过订单数量来排序。

?php foreach($_productCollectionas$product): ?>
<?php if($counter<= $totalPerPage): ?>
<?php $productUrl=  $product->getProductUrl() ?>
<a href="<?php echo $productUrl ?>"title="View <?php echo $product->name ?>">
<h4><?php echo$product->name ?></h4>
</a>
<small>已售出: <?php echo(int)$product->ordered_qty ?></small><br />
<a href="<?php echo $productUrl ?>"title="View <?php echo $product->name ?>"><img src="<?php echo $this->helper('catalog/image')->init($product, 'image')->resize(120); ?>"alt="Product image"  /></a> <br />
<?php endif; ?>
<?php endforeach; ?>

根据需求,还能实现已经售出多少件商品的功能。而我做的就是推荐分类,然后再显示被推荐类下面的产品,排序可以按销售、人气、价格、上架时间等。同时欢迎大家有好的东西分享出来。

转载请注明:嗨酷哥,有你更酷! » Magento 首页显示销售排行

与本文相关文章

发表我的评论

取消评论
表情 插代码

Hi,您需要填写昵称和邮箱!

  • 必填项
  • 必填项