编辑Magento订单确认电子邮件

4

我希望能够编辑包含订单总额(运费、总计)的电子邮件内容块,但是找不到此代码段的模板文件。

我需要删除运费和总计行,仅显示小计行。

我已通过“系统 > 事务性邮件”检查了模板,并查看了一组大量的phtml文件,试图找到此特定实例(如果这有所区别,将适用于注册和未注册用户)。

当前电子邮件的格式如下:

[logo]
hello {name/guest}
thank you message, {email} {tel}
order id info and date
billing info / payment method
shipping info / shipping method

order details - assuming this is {{layout handle="sales_email_order_items" order=$order}}

thank you message

在订单详细信息行中,它是一个表格。
每个项目的行项目:项目、SKU、数量、小计。
在所有项目之后是小计,然后是运费,接下来是总计 - 我想要去掉其中的2行,即运费和小计或总计中的一项。
2个回答

4
在sales.xml布局中,有一个名为sales_email_order_items的元素,它负责订单项目并包含...
 <block type="sales/order_totals" name="order_totals" template="sales/order/totals.phtml">
            <action method="setLabelProperties"><value>colspan="3" align="right" style="padding:3px 9px"</value></action>
            <action method="setValueProperties"><value>align="right" style="padding:3px 9px"</value></action>
            <block type="tax/sales_order_tax" name="tax" template="tax/order/tax.phtml">
                <action method="setIsPlaneMode"><value>1</value></action>
            </block>
        </block>

尝试在order_totals中分配新模板而不是sales/order/totals.phtml,并修改该新模板以仅显示总计。我没有测试过,但这可以为您提供方向。

看一下:/app/design/frontend/base/default/template/sales/order/totals.phtml,它严格来说是一个foreach循环。这个能否移动到我的模板文件夹并在那里进行编辑(而不需要编辑sales.xml以更改它所查找的文件)? - Kender
是的,我把它移动到了我的主题文件夹并进行了编辑,效果不错。我还添加了一个if语句if($_total->getLabel() == 'Subtotal') :,只显示那一行。 - Kender
我认为模板 sales/order/totals.phtml 除了订单确认电子邮件中的订单总计外,还用在其他地方。例如,在客户账户中显示订单时也似乎使用了它。编辑此模板时请谨记此点。对我来说没问题,因为我需要更新所有地方的总计,而不仅仅是订单确认电子邮件中的。 - Louis B.
是的,没错。那个模板也在其他地方使用。 - Kamal Joshi

3

默认的电子邮件位于

 /app/locale/en_US/template/email/ 

谢谢


那么我认为我需要的部分由 {{layout handle="sales_email_order_items" order=$order}} 处理,我需要知道这个布局在哪里。 - Kender
我已经查看了\app\design\frontend\base\default\template\email\order\items\order,但无法找到任何关于“运输和处理”的区块以从模板中删除。 - Kender

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接