覆盖 Magento 中块的代码隐藏

发布于 2024-11-03 09:39:22 字数 695 浏览 4 评论 0原文

我正在编写一个模块来扩展 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"/>

I am writing a module to extend the Core/Catalog/Product/View/Media.php class so I can expose new methods in my template. I followed a number of guides online, including Alan Storms excellent series, but have had little success. ( http://alanstorm.com/magento_config )

I posted my code on Github: https://github.com/razialx/Magento-Overwrite-Block

I am not getting any errors in the logs, it just isn't loading my class. Very perplexed.

One thought I had was that I may only be able to rewrite classes that are explicitly defined. I know the Mage_Catalog_Block_Product_View_Media class is never defined in a config file, though I assume it is referenced by the layout xml file catalog.xml

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

等你爱我 2024-11-10 09:39:22

您的 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>

您的 节点需要包含在 节点中。

Your config.xml is slightly off. Give the following a try.

 <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>

Your <blocks> node needs to be enclosed in a <global> node.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文