Php 将pager.html放在result.phtml而不是toolbar.phtml中

Php 将pager.html放在result.phtml而不是toolbar.phtml中,php,magento,magento-1.9.1,Php,Magento,Magento 1.9.1,我正在尝试使用pager.phtml文件对result.phtml文件进行分页创建自定义块: echo $this->getLayout()->createBlock('page/html_pager', 'bottom.pager')->toHtml(); 但我得到了以下错误: Fatal error: Call to a member function getSize() on a non-object 在Magento的默认结构中,在文件toolbar.phtml中使

我正在尝试使用pager.phtml文件对result.phtml文件进行分页创建自定义块:

echo $this->getLayout()->createBlock('page/html_pager', 'bottom.pager')->toHtml();
但我得到了以下错误:

Fatal error: Call to a member function getSize() on a non-object

在Magento的默认结构中,在文件toolbar.phtml中使用函数$this->getPagerHtml():

此函数显示默认页面导航,并在以下位置调用toolbar.phtml文件:

app/design/frontend/base/default/template/catalog/product/list.phtml
app/design/frontend/base/default/template/catalogsearch/result.phtml
通过函数$this->getToolbarHtml()调用list.phtml文件:

app/design/frontend/base/default/template/catalog/product/list.phtml
app/design/frontend/base/default/template/catalogsearch/result.phtml
通过函数$this->getProductListHtml()



我如何使用函数$this->getPagerHtml()(或以某种方式使用分页)直接在result.phtml中分页我的结果,而不需要所有这些依赖项?

Uou可以使用此代码将
pager
添加到
结果中。phtml
。必须使用
setCollection
功能提供集合

\u getProductCollection()
是受类
Mage\u CatalogSearch\u Block\u Result
保护的函数,用于获取当前产品集合

<?php 
    $layout = Mage::getSingleton('core/layout');
    $pager = $layout->createBlock('page/html_pager');
    $pager->setCollection($this->_getProductCollection());
    echo $pager->toHtml();
 ?> 


您可能需要添加更多信息才能得到一个好答案。例如,显示抛出错误的代码(其中使用了
getSize()
)。现在我们在瞎飞。谢谢你的提示!我编辑了这个问题,试图帮助更好地理解我的问题。在pager.phtml文件的开头,有一个代码
,这就是我得到错误的地方。这肯定更好。对不起,我根本不知道Magento能帮上什么忙。