产品清单上的Magento寻呼机

时间:2012-12-14 20:25:35

标签: list magento product pager

如何仅在产品列表底部插入寻呼机?

在我想要的产品列表的顶部:“按相关性/畅销书/等排序”和“按项目/列表排序项目”,这是我能够做到的。

在产品列表的底部我只想要寻呼机,我试图在list.phtml中插入以下代码

<?php echo $this->getPagerHtml() ?>

但是这个php代码不能直接在产品列表中使用。

如何让寻呼机在产品列表上工作并显示在底部?

3 个答案:

答案 0 :(得分:2)

您好,请使用以下代码创建新的toolbar-bottom.phtml文件 即 app / design / frontend /(base或default)/(default或yourtheme)/template/catalog/product/list/toolbar-bottom.phtml

<?php if ($this->getCollection()->getSize()): ?>
    <div class="toolbar">
        <div class="pager"> 
            <p class="amount"> 
                <?php if ($this->getLastPageNum() > 1): ?> 
                    <?php echo $this->__('Items %s to %s of %s total', $this->getFirstNum(), $this->getLastNum(), $this->getTotalNum()) ?>
                <?php else: ?> 
                    <strong>
                        <?php echo $this->__('%s Item(s)', $this->getTotalNum()) ?>
                    </strong>
                <?php endif; ?> </p> 
            <div class="limiter"> 
                <label><?php echo $this->__('Show') ?></label> 
                <select onchange="setLocation(this.value)"> 
                    <?php foreach ($this->getAvailableLimit() as $_key => $_limit): ?> 
                        <option value="<?php echo $this->getLimitUrl($_key) ?>"<?php if ($this->isLimitCurrent($_key)): ?> selected="selected"
                        <?php endif ?>
                        <?php echo $_limit ?> 
                    </option> 
                <?php endforeach; ?>
            </select>
            <?php echo $this->__('per page') ?> </div> <?php
        echo
        $this->getPagerHtml()
        ?>
    </div>
    </div>
    <?php  endif ?>

调入 app / design / frontend /(base或default)/(默认或yourtheme)/template/catalog/product/list.phtml

的行底部

getToolbarBlock() - &gt; setTemplate('catalog / product / list / toolbar-bottom.phtml') - &gt; toHtml();

答案 1 :(得分:1)

您可以通过以下两种方式之一完成此任务。

1)使用CSS

<div class="category-products">
   <div class='top-toolbar'><?php echo $this->getToolbarHtml() ?></div>

 ...
   <div class='bottom-toolbar'><?php echo $this->getToolbarHtml() ?></div>
</div>

在css中

 .bottom-toolbar .xyz{
    display:none;
 }

2)使用自定义模块覆盖getToolbarHtml

$this->getToolbarHtml('top-toolbar');

$this->getToolbarHtml('bottom-toolbar');


public function getToolbarHtml($toolbar_position)
{   
    $this->toolbar_position = $toolbar_position;
    return $this->getChildHtml('toolbar');
}

然后尝试将$this->toolbar_position传递给每个块以显示您需要的部分

答案 2 :(得分:0)

我认为这就是你想要的。

$toolbar = $this->getToolbarBlock();
$toolbar->setCollection($_productCollection);
if($toolbar->getCollection()->getSize() > 0):
echo $toolbar->getPagerHtml(); //Pager
echo $toolbar-> __('Items %s to %s of %s total', $toolbar->getFirstNum(), $toolbar->getLastNum(),
$toolbar ->getTotalNum());
endif;

字体: http://mayankpatel104.blogspot.com.br/2012/07/magento-pagination-without-toolbar.html