Magento工具栏未呈现寻呼机
我是Magento的新手,在从catalog/category/view.phtml文件调用寻呼机时,我很难弄清楚如何在工具栏中显示寻呼机。以下是我使用的代码:Magento工具栏未呈现寻呼机,magento,toolbar,pager,php,Magento,Toolbar,Pager,Php,我是Magento的新手,在从catalog/category/view.phtml文件调用寻呼机时,我很难弄清楚如何在工具栏中显示寻呼机。以下是我使用的代码: $layout = Mage::getSingleton('core/layout'); $toolbar = $layout->createBlock('catalog/product_list_toolbar'); $pager = $layout->createBlock('catalog/html_pager');
$layout = Mage::getSingleton('core/layout');
$toolbar = $layout->createBlock('catalog/product_list_toolbar');
$pager = $layout->createBlock('catalog/html_pager');
$block = $layout->createBlock('catalog/product_list');
$block->setCategoryId($_category->getId());
$block->setChild('toolbar', $toolbar);
$collection = $block->getLoadedProductCollection();
$toolbar->setCollection($collection);
echo $toolbar->renderView();
排序方式、每页显示项目数和项目总数会适当显示,但寻呼机无法呈现。。有人知道我做错了什么吗?任何帮助都将不胜感激。您有两个问题我可以立即发现
catalog/html\u pager
这样的块类型(你是说page/html\u pager
)getPagerHtml
方法查找名为product\u list\u toolbar\u pager
的子块。您尚未插入、追加或设置此子项$pager = $layout->createBlock('page/html_pager');
并将其插入工具栏中
$toolbar->setChild('product_list_toolbar_pager', $pager);
你可能会有更好的结果
此外,寻呼机模板本身(frontend/base/default/template/page/html/pager.phtml
)包含的代码将在只有一页结果时超出页面。在这个if子句中加入一些调试
<!-- File: app/design/frontend/base/default/template/page/html/pager.phtml -->
<?php if($this->getLastPageNum()>1): ?>
以确保您不会与小类别列表发生冲突 非常感谢!它正在工作。我使用的主题似乎已经考虑到了这个问题,但是谢谢你指出这一点。