0

製品ページとグリッドページの両方で、Magentoのすべての製品の価格を非表示にしようとしています。レイアウトを更新するためのカスタムモジュールを作成しました。config.xmlは次のとおりです。

<config>
    <modules>
        <ABC_XYZ>
            <version>1.0</version>
        </ABC_XYZ>
    </modules>

    <frontend>
        <layout>
            <updates>
                <killprice>
                    <file>killprice.xml</file>
                </killprice>
            </updates>
        </layout>
    </frontend>

</config>

次のようにkillprice.xmlを追加しました。

<layout>


    <default>
        <block type="catalog/product_price_template" name="catalog_product_price_template"  template="killprice/price.phtml"  />
    </default>

    <killprice_index_index>
        <block type="catalog/product_price_template" name="catalog_product_price_template"  template="killprice/price.phtml"  />
    </killprice_index_index>

</layout> 

しかし、killprice / price.phtmlはレンダリングされておらず、通常の価格テンプレートを取得しています。killprice.xmlレイアウトファイルのタグについて少し疑わしいですが、価格テンプレートを正しい方法でオーバーライドしていますか?

4

1 に答える 1

5

これはあなたが探しているものでなければなりません…

<layout>
    <default>
         <reference name="catalog_product_price_template">
            <action method="addPriceBlockType"><type>simple</type><block>catalog/product_price</block><template>killerprice/price.phtml</template></action>
            <!-- duplicate for each product type you need to handle i.e. change the value of the <type> node" -->
        </reference>
    </default>
</layout>

Mage_Catalog_Block_Product_Abstractこれが機能する理由を確認してください

于 2012-09-01T20:42:28.047 に答える