我对Magento很新,并且到目前为止一直关注基本主题,但我遇到目录分页问题。
目前我无法显示“page / html_pager”块。
因此,我的catalog.xml对锚和非锚类别都有这个:
<reference name="content">
<block type="catalog/category_view" name="category.products" template="catalog/category/view.phtml">
<block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml">
<block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
<block type="page/html_pager" name="product_list_toolbar_pager" />
</block>
</block>
</block>
</reference>
我的toolbar.phtml有相应的代码:
<?php echo $this->getPagerHtml() ?>
我的默认/ template / page / html / pager.phtml只包含一些测试代码:
<h1>Test</h1>
起初我以为可能是因为没有多个页面,所以我添加了一些产品并设置网格和列表视图以显示每页最多1个,并且项目计数反映了这一点:
Showing 1 of 11 items
在var_dump
上执行$this->getPagerHtml()
会返回一个空字符串,并使用模板路径提示表明它似乎甚至没有加载块 - 但它会加载它的父块。
直接从基础设计包中复制代码不起作用,但切换到它的包。
那么,我错过了什么?还是做错了?我已经完成了关于它可能是什么的想法。
感谢
答案 0 :(得分:3)
解决:
添加
<action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
在product_list_toolbar块出现后解决了这个问题。
Magento的文件在实地有点薄,所以我不确定为什么
<block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
要求使用动作标记再次设置名称,但确实如此。
如果有人能够解释这一点,我很乐意理解它。
答案 1 :(得分:1)
是否有可能被布局中的其他.xml文件覆盖?
您可以随时删除布局目录中的所有.xml文件,然后逐个将它们重新显示,并查看分页工具栏是否消失,同时确保缓存已关闭。
之后,将模板目录编目重命名为〜catalog并让它获取基本目录目录,看看它是否真的是导致问题的.phtml文件。