我疯狂地试图解决这个问题。模块本身是一个已经存在的工作模块,所以我知道它与/ 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";
}
}
答案 0 :(得分:1)
这不是用于过滤电子邮件模板的类。我假设您正在通过cms页面或cms块进行测试
用于过滤此实体的类由配置路径global/cms/page/template_filter
和global/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>