覆盖Magento中块的代码隐藏

时间:2011-04-25 17:13:41

标签: magento module customization block

我正在编写一个扩展Core / Catalog / Product / View / Media.php类的模块,以便在模板中公开新方法。我在线跟踪了很多指南,包括Alan Storms优秀系列,但收效甚微。 (http://alanstorm.com/magento_config

我在Github上发布了我的代码:https://github.com/razialx/Magento-Overwrite-Block

我没有在日志中收到任何错误,它只是没有加载我的课程。非常困惑。

我有一个想法是我可能只能重写明确定义的类。我知道Mage_Catalog_Block_Product_View_Media类永远不会在配置文件中定义,但我认为它是由布局xml文件catalog.xml引用的

<block type="catalog/product_view_media" name="product.info.media" as="media" template="catalog/product/view/media.phtml"/>

1 个答案:

答案 0 :(得分:1)

您的config.xml略有偏差。试试下面的内容。

 <config>
    <modules>
        <Test_Catalog>
            <version>1.0.0.0.0</version>
        </Test_Catalog>
    </modules>
    <global>
        <blocks>
            <catalog>
                <rewrite>
                    <product_view_media>Test_Catalog_Block_Product_View_Media</product_view_media>
                </rewrite>
            </catalog>
        </blocks>
    </global>
</config>

您的<blocks>节点需要包含在<global>节点中。