
在magento模板中,如何实现如上图的效果,将左栏的筛选器放在中间部分,这是目前比较流行和实用的模板样式。
本例使用magento1.4代码,请修改你在使用的magento模板文件。
1.在文件:layout\catalog.xml中的代码
<!-- Category default layout --> <catalog_category_default translate="label"> <label>Catalog Category (Non-Anchor)</label> <reference name="left"> <block type="catalog/navigation" name="catalog.leftnav" after="currency" template="catalog/navigation/left.phtml"/> </reference> <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"/>
修改为
<!-- Category layered navigation layout --> <catalog_category_layered translate="label"> <label>Catalog Category (Anchor)</label> <reference name="content"> <block type="catalog/category_view" name="category.products" template="catalog/category/view.phtml"> <block type="catalog/layer_view" name="catalog.leftnav" as="catalog_filter" template="catalog/layer/view.phtml"/> <block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml"> <!-- <action method="addReviewSummaryTemplate"><type>default</type><template>review/helper/su.phtml</template></action> --> <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 type=”catalog/layer_view” name=”catalog.leftnav” as=”catalog_filter” template=”catalog/layer/view.phtml”/>这行代码换了位置,加了个as属性
2.在文件template\catalog\category\view.phtml
中添加两行<?php echo $this->getChildHtml(‘catalog_filter’) ?>
代码如下
<?php elseif($this->isMixedMode()): ?> <?php echo $this->getCmsBlockHtml() ?> <?php echo $this->getChildHtml('catalog_filter') ?> <?php echo $this->getProductListHtml() ?> <?php else: ?> <?php echo $this->getChildHtml('catalog_filter') ?> <?php echo $this->getProductListHtml() ?> <?php endif; ?>
注意我添加到哪个位置了。
3.刷新magento缓存,查看结果。修改filter的模板文件和css,完成前台的效果。
转载表明处处:hellokeykey.com
key sir:
3.刷新magento缓存,查看结果。修改filter的模板文件和css,完成前台的效果
后面那段没有解释嘛?如果不修改filter和css 刷新完magento缓存 结果又是什么样的呢?
页面会是乱的,如果缓存不刷新可能看不到效果。
这两个block用的type和 template都不一样,这是为什么啊
先不用搞明白,先会用就行了。这个是关联到model的
汗。。还是没有解决ㅡㅡ;;怒了
我也没有办法了,今天搞1.6,居然首页添加商品失败,我也很无语。很多时候有些事就是搞不定。
钥匙哥, 是否有试过在最新的magento 1.7里应该怎么设置, 把filter 放到中间去? 你这边写的方法好像不行了,我试了好几次, 都无法显示东西
没有试过,不过原理是一样的,你再试试吧
你好,我怎么获取属性筛选器这一段代码,我要移植到自定义页面
需要自己写,或者google下