Magento模型重写不起作用

时间:2013-10-08 14:03:22

标签: php magento

我疯狂地试图解决这个问题。模块本身是一个已经存在的工作模块,所以我知道它与/ app / etc / Modules / configs之类的东西无关。我知道重写是行不通的,因为我在同一个函数的Core文件中放了一个类似的日志语句,它是被击中的,而不是我的重写函数。

公司/模块的/ etc / config.xml中

<global>
  <models>
    <core>
      <rewrite>
        <email_template_filter>Company_Module_Model_Email_Template_Filter</email_template_filter>
      </rewrite>
    </core>
  </models>
</global>

公司/模块/型号/电子邮件/模板/ Filter.php:

class Company_Module_Model_Email_Template_Filter extends Mage_Core_Model_Email_Template_Filter
{

    public function skinDirective($construction)
    {
        echo "hello";
    }
}

1 个答案:

答案 0 :(得分:1)

这不是用于过滤电子邮件模板的类。我假设您正在通过cms页面或cms块进行测试 用于过滤此实体的类由配置路径global/cms/page/template_filterglobal/cms/block/template_filter决定 该路径在config.xml的{​​{1}}文件中定义:

Mage_Cms

并被 <cms> <page> <tempate_filter>cms/template_filter</tempate_filter> </page> <block> <tempate_filter>cms/template_filter</tempate_filter> </block> </cms> config.xml中的标记覆盖。

Mage_Widget

实际上,对于过滤块,您可以尝试覆盖 <cms> <page> <tempate_filter>widget/template_filter</tempate_filter> </page> <block> <tempate_filter>widget/template_filter</tempate_filter> </block> </cms>