首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何根据前端的受欢迎程度对Magento产品进行排序?

如何根据前端的受欢迎程度对Magento产品进行排序?
EN

Stack Overflow用户
提问于 2013-03-23 15:44:10
回答 1查看 772关注 0票数 0

我已经创建了一个模块,用于在类别页面的“排序依据”下拉框中添加一个新选项。新的选项应该显示在每个类别页面相同的‘位置’选项,这是已经有。我想把“人气”作为一个选项添加进来。我的Model类正在执行,它将选项添加到选项数组中。但是积木不起作用。我需要你的帮助来找出我代码中的问题?

下面是Block类

代码语言:javascript
复制
<?php
class Tal_Popularity_Block_Product_List_Toolbar extends Mage_Catalog_Block_Product_List_Toolbar
{
    public function setCollection($collection)
   {
       $this->_collection = $collection;
       $this->_collection->setCurPage($this->getCurrentPage());
       // we need to set pagination only if passed value integer and more that 0
       $limit = (int)$this->getLimit();
       if ($limit) {
           $this->_collection->setPageSize($limit);
       }
        if($this->getCurrentOrder() == 'popularity'){
           $this->_collection->sortByReview($this->getCurrentDirection());
       }
     else if ($this->getCurrentOrder()) {

           $this->_collection->setOrder($this->getCurrentOrder(), $this->getCurrentDirection());
    }

       return $this;
   }
}

以下是我的config.xml

代码语言:javascript
复制
<?xml version="1.0" ?>
 <config>
    <modules>
        <Tal_Popularity>
            <version>0.1.0</version>
        </Tal_Popularity>
    </modules>
    <frontend>
        <routers>
            <popularity>
                <use>standard</use>
                <args>
                    <module>Tal_Popularity</module>
                    <frontName>popularity</frontName>
                </args>
            </popularity>
        </routers>
    </frontend>
    <global>
    <models>
        <catalog>
            <rewrite>
                <config>Tal_Popularity_Model_Config</config>
            </rewrite>
        </catalog>
    </models>
     <blocks>
        <catalog>
            <rewrite>
                <catalog>Tal_Popularity_Block</catalog>
            </rewrite>
           </catalog>
        </blocks>
         <resources>
            <popularity_setup>
                <setup>
                    <module>Tal_Popularity</module>
                </setup>
                <connection>
                    <use>core_setup</use>
                </connection>
            </popularity_setup>
            <popularity_write>
                <connection>
                    <use>core_write</use>
                </connection>
            </popularity_write>
            <popularity_read>
                <connection>
                    <use>core_read</use>
                </connection>
            </popularity_read>
        </resources>
    </global>
</config>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-23 16:22:25

我找到了解决方案。问题出在config.xml中

之前的代码。

代码语言:javascript
复制
<blocks>
        <catalog>
            <rewrite>
                <catalog>Tal_Popularity_Block</catalog>
            </rewrite>
           </catalog>
        </blocks>

上面的代码应该如下所示。

代码语言:javascript
复制
 <blocks>
            <catalog>
                <rewrite>            <product_list_toolbar>Tal_Popularity_Block_Product_List_Toolbar</product_list_toolbar>
                </rewrite>
               </catalog>
            </blocks>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15584524

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档