我做了一个剧本女巫展示产品。
但所有产品都在没有pagenumber工具栏的一页上
如何激活产品系列的页面编号。
我使用以下方式收集了该集合:
$attribute = Mage::getResourceModel('catalog/product')->getAttribute('manufacturer');
$attribute->setStoreId(Mage_Core_Model_App::ADMIN_STORE_ID);
$source = $attribute->getSource();
$id = $source->getOptionId($brand);
//$products = Mage::getModel('catalog/product')->getCollection();
$products = Mage::getResourceModel('catalog/product_collection')->addAttributeToSelect(Mage::getSingleton('catalog/config')->getProductAttributes());
$products->addAttributeToFilter('manufacturer', array('eq' => $id));
接下来我使用从catalog / list.phtml中删除的foreach来显示所有产品
如何激活页面编号工具栏
答案 0 :(得分:1)
试试这个:
$pager = $this->getLayout()->createBlock('page/html_pager');
echo $this->getLayout()->createBlock('catalog/product_list_toolbar')->setChild('product_list_toolbar_pager', $pager)->setCollection($products)->toHtml();
答案 1 :(得分:0)
您应该使用catalog/product/list.phtml
而不是从中进行复制。因此,您需要在<global>
中的config.xml
- 代码中添加此内容:
<blocks>
<yourmodule>
<class>Namespace_Yourmodule_Block</class>
</yourmodule>
</blocks>
您可以稍后将其添加到布局XML:
<yourmodule_index_view translate="label">
<!-- other nodes here, for example root where you pick base page layout template -->
<reference name="content">
<!-- more blocks here or below if you need anything above or below listing -->
<block type="yourmodule/list" name="anyName" template="catalog/product/list.phtml"/>
</reference>
</yourmodule_index_view>
在控制器IndexController.php
public function viewAction() {
$this->loadLayout();
$this->renderLayout();
}
你的块Block/List.php
class Namespace_Yourmodule_Block_List extends Mage_Catalog_Block_Product_List
{
protected function _getProductCollection()
{
// any code here, get the collection in $collection for example..
$this->_productCollection = $collection;
return $this->_productCollection;
}
}