如何将块(phtml)添加到指定的产品视图(包)中

时间:2015-11-04 10:52:36

标签: magento

我想仅将自定义块添加到捆绑产品类型中。 这意味着自定义块仅显示何时是捆绑产品。



<catalog_product_view>
    <PRODUCT_TYPE_bundle translate="label">
         <reference name="content">
            <reference name="product.info.media.after">
                <block type="catalog/product_view_description" name="module_block" as="other" template="companyname/module/selection.phtml"/>
            </reference>
        </reference>
        </PRODUCT_TYPE_bundle> 
</catalog_product_view>
&#13;
&#13;
&#13; 我尝试在我的模块<product type_bundle>中使用layout xml,但它不起作用,每个人都可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

您正在以正确的方式执行此操作,但您的XML有点不对劲。 PRODUCT_TYPE_bundle应位于顶层:

<?xml version="1.0"?>
<layout version="0.1.0">
    <PRODUCT_TYPE_bundle>
         <reference name="content">
            <reference name="product.info.media.after">
                <block type="catalog/product_view_description" name="module_block" as="other" template="companyname/module/selection.phtml"/>
            </reference>
        </reference>
    </PRODUCT_TYPE_bundle>
</layout>

您也可以离开&#34;内容&#34;参考出来:

<?xml version="1.0"?>
<layout version="0.1.0">
    <PRODUCT_TYPE_bundle>
        <reference name="product.info.media.after">
            <block type="catalog/product_view_description" name="module_block" as="other" template="companyname/module/selection.phtml"/>
        </reference>
    </PRODUCT_TYPE_bundle>
</layout>

编辑:通过模拟整个文件,使布局片段更加清晰。

答案 1 :(得分:0)

内部所有区块&#34;内容&#34;块自动输出。您可以直接在内容&#34;内容&#34;中添加自定义块,如下所示:

<reference name="content">
    <block type="catalog/product_view_description" name="module_block" as="other" template="companyname/module/selection.phtml"/>
</reference>

另外,我可以看到product.info.media.aftercore/text_list,这意味着它应该自动输出底层块。

可能你没有那个模板。如果是这种情况,您会收到var/log/system.logvar/log/exception.log

的通知

此外,尝试将as="other"更改为更独特的内容(因为您可能正在使用块的重复名称)。