2011-04-25 105 views
0

对这个问题的冗余感到抱歉,但是没有一个示例和解决方案适用于我。我有一个自定义模块,可以扩展Mage_Catalog_Block_Product_List。它唯一的功能是_getProductCollection它根据您要过滤的属性设置产品集合。这很简单,并没有涉及布局更新。我把块在页面上通过将以下为CMS页面的内容部分:将寻呼机添加到自定义收集块

{{block type="vps_featured/list" name="vps_featured_list" attribute_name="best_sellers" template="catalog/product/sale_list.phtml"}} 

因为它延伸Mage_Catalog_Block_Product_List,我得到一个产品列表页面中的所有花里胡哨,包括工具栏。但是,寻呼机不在那里。我已经尝试了许多不同的建议,但没有任何帮助。

我查看了Toolbar.php的核心代码,发现它在哪里调用getPagerHtml。我在那里放了一些调试语句,并确定在将自定义块放在页面上时调用此函数,但$this->getChild('product_list_toolbar_pager')没有返回该块,可能是因为它不在那里。我尝试使用布局更新XML文件添加块,并将<frontend><layout><updates>...标记添加到我的配置中,但这似乎没有任何作用。

我有Alan Storm的CommerceBug扩展,所以我把它拉出来并导出页面的布局XML。它根本不包含任何工具栏块,尽管工具栏位于页面上,只有页面工具不起作用。如果我在类别着陆页上做同样的事情,它会在布局xml中显示工具栏块。所以我在这里显然错过了一些东西,但是我对此感到不知所措。我希望有人能帮助:)

布赖恩

+0

我固定此使用找到了解决[这里](http://www.magentocommerce.com/boards/viewthread/79791/)。我会在强制性8小时延迟后更新解决方案......谢谢,因此:( – BrianVPS 2011-04-26 00:41:01

回答

0

事实证明,该解决方案发现HERE的伟大工程!您必须使用布局更新XML添加块,而不是将其添加到内容部分。我仍然不太明白为什么,但它有效。