Magento电子邮件模板

时间:2010-01-11 12:33:03

标签: magento

如何为客户订单确认电子邮件模板和管理员副本设置不同的电子邮件模板。

我需要为管理员电子邮件副本添加一些额外内容。

由于

5 个答案:

答案 0 :(得分:4)

我假设您当前正在使用“复制”功能发送管理员电子邮件。如果不是这样,请告诉我。由于当前正向多个收件人发送相同的电子邮件,因此很难更改每个收件人的内容。但是,您可以使用一些代码发送多封电子邮件,这样您就可以使用不同的电子邮件模板。这可以通过创建一个新类来实现:

class MyModule_Model_Sales_Order extends Mage_Sales_Model_Order {

    /**
     * Sending email with order data
     *
     * @return Mage_Sales_Model_Order
     */
    public function sendNewOrderEmail() {
        parent::sendNewOrderEmail();

        /**
         * Your admin email sending code here. Copy it out of the sendNewOrderEmail
         * function in Sales_Order.
         */

        return $this;
    }
}

然后告诉Magento覆盖模块配置中的核心类:

<config>
    <global>
        <models>
            <mymodule>
                <class>MyModule_Model</class>
            </mymodule>
            <sales>
                <rewrite>
                    <order>MyModule_Model_Sales_Order</order>
                </rewrite>
            </sales>
        </models>
    </global>
</config>

您需要创建所需的模板,并确保被覆盖的模型使用该模板。

答案 1 :(得分:1)

将标签目录更改为sales并使用类名添加名称空间,例如:如果名称空间为Custom,则添加Custom_MyModule_ModelCustom_MyModule_Model_Sales_Order,因此生成的XML文件将为:

<config>
    <global>
        <models>
            <mymodule>
                <class>Custom_MyModule_Model</class>
            </mymodule>
            <sales>
                <rewrite>
                    <order>Custom_MyModule_Model_Sales_Order</order>
                </rewrite>
            </sales>
        </models>
    </global>
</config>

答案 2 :(得分:0)

您可以在应用中检查和编辑HTML文件&gt; locale&gt; en_US&gt;模板&gt;电子邮件

答案 3 :(得分:0)

请记住,您正在推销销售而非目录。

因此,为了防止搜索上述代码无效的原因,请在config.xml中使用“sales”而不是“catalog”。

答案 4 :(得分:0)

此扩展程序执行此操作: http://codecanyon.net/item/send-new-order-email-to-admin/3198802

总是值得花10美元给我所有时间浪费试图让其他答案在这里工作。我刚刚为联系表单制作了自己的自定义模块,但其他解决方案不起作用。