Php Magento覆盖Mage_Core_Model_电子邮件类

Php Magento覆盖Mage_Core_Model_电子邮件类,php,magento,model,content-management-system,overriding,Php,Magento,Model,Content Management System,Overriding,我正在尝试扩展Mage_Core_Model_电子邮件类中的功能。 我想覆盖该模型,以便修改zend_邮件呼叫以发送带有电子邮件的附件 我已经在使用OutsourceConline验证码扩展,将安全文本添加到我的所有表单中,这是对联系人索引控制器的扩展。(说,以防万一这可能会干扰我的代码…尽管我不这么认为) 我已经定义了一个新模块“我的”和包“核心”: 我在app/etc中创建了模块xml。。。。并启用了模块,我测试了模块是否被识别和激活,以及它是否被激活 已创建包含2个文件夹的本地模块rep

我正在尝试扩展Mage_Core_Model_电子邮件类中的功能。 我想覆盖该模型,以便修改zend_邮件呼叫以发送带有电子邮件的附件

我已经在使用OutsourceConline验证码扩展,将安全文本添加到我的所有表单中,这是对联系人索引控制器的扩展。(说,以防万一这可能会干扰我的代码…尽管我不这么认为)

我已经定义了一个新模块“我的”和包“核心”:

  • 我在app/etc中创建了模块xml。。。。并启用了模块,我测试了模块是否被识别和激活,以及它是否被激活
  • 已创建包含2个文件夹的本地模块repo../local/My/Core。。。模型等
  • 创建my config.xml以覆盖电子邮件类
  • 创建了我的新类。。。扩展旧的电子邮件模型类
config.xml代码

<?xml version="1.0"?>
<config>
<modules>
    <My_Core>
        <version>0.1.0</version>  
    </My_Core>
</modules>
<global>
        <models>
        <core>
            <rewrite>
                <email>
                    My_Core_Model_Emailwattachments
                </email>
            </rewrite>
        </core>
        </models>
    </global>
</config>
我在构造函数中添加了一个var_转储

当运行我的联系人窗体并发送电子邮件时。。。这个类不能运行。 我已经测试了我试图在原始类中重写的函数是否正在运行。。。。但我不能接受我的课程作为替代

根据在线示例,尝试了config.xml中的多种标记组合。。。。但它就是不起作用


有人看到或知道我可能遗漏了什么吗?我还可以做更多的测试来看看为什么这不起作用吗?

我想你只需要告诉Magento你的模块包括模型

<models>
    <core>
        <rewrite>
            <email>
                My_Core_Model_Emailwattachments
            </email>
        </rewrite>
    </core>
    <mycore>
        <class>My_Core_Model</class>
    </mycore>
</models>

我的核心模型电子邮件附件
我的核心模型

Hi Cags…感谢您的快速响应。我试过这个密码…但还是不行。我对你的语法有点困惑,因为很明显syntx是这里的关键。。。其中指定了“mycore”标记。这应该是我的核心吗???如果在这里的xml标记中使用大写,是否会产生干扰?尝试了一些基于我刚才所说的变化,但目前没有koy。它可以是您喜欢的任何值,我给出的示例将是我推荐的值。它是get model使用的名称空间,也就是说,要创建模型的实例,您需要执行
Mage::getModel('mycore/emailwattachments')
。示例中的节点是在app/code/core/mage/core/etc/config.xml的config.xml中添加一个元素。所以有人可以通过使用他们的核心模型来过载你的模块。。。您在更改xml后是否有`rm-rf var/cache/mage-->?是的,谢谢。在min询问所有问题…看不出为什么不工作。:/我现在已禁用缓存以提供帮助。我不能发布新的代码…但我不能让它工作。是否有地方可以检查系统上是否有重写?某个地方的数据输入?这可能有助于我缩小问题的范围。我也在想,也许我的外包商online_验证码可能会妨碍……但不会覆盖email.php模型……所以肯定不会。非常奇怪。。。
<models>
    <core>
        <rewrite>
            <email>
                My_Core_Model_Emailwattachments
            </email>
        </rewrite>
    </core>
    <mycore>
        <class>My_Core_Model</class>
    </mycore>
</models>