如何从我的模块布局xml插入catalog / category_list块

时间:2013-03-05 18:27:42

标签: php xml magento templates

我正在尝试制作一个模块,在"before_body_end"的所选页面上插入一些JS跟踪代码。到目前为止,我已经成功地使用.phtml模板注入了我自己的块,其中包含跟踪JS的产品视图,并在我的布局XML中使用此代码:

<catalog_product_view>
    <reference name="before_body_end">
        <block type="catalog/product_view" name="trackingjs_product" template="company/module/product.phtml"></block>
    </reference>
</catalog_product_view>

确保块类型为catalog / product_view,以便我可以访问产品类并获取当前产品ID等信息。我的问题在于产品列表页面。我为catalog/product_list尝试了类似的代码但是没有用。

似乎我必须将其设置为catalog_product_view才能输出任何内容,但是我无法访问产品集合。关于如何访问产品系列或如何使其在catalog/product_list上运行的任何想法?

1 个答案:

答案 0 :(得分:1)

如果您只需要产品或类别信息,则不需要此类块。只要您拥有Mage :: registry('current_product')和Mage :: registry('current_category')来检索产品和类别信息,就可以找到核心/模板。

但如果你喜欢你的方式,我建议你这样做

<catalog_category_layered>
<reference name="before_body_end">
    <block type="catalog/product_list" name="trackingjs_list" template="company/module/list.phtml"></block>
</reference>
</catalog_category_layered>
<catalog_category_default>
<reference name="before_body_end">
    <block type="catalog/product_list" name="trackingjs_list" template="company/module/list.phtml"></block>
</reference>
</catalog_category_default>