Magento自定义项目和default.phtml电子邮件

时间:2012-09-21 07:49:05

标签: magento

我正在尝试制作自定义电子邮件模板,但我不想更改这些文件,因为在向客户发送订单确认时会使用这些文件。我需要一个单独的模板,当订单通过时,应该作为通知发送给我们(通过扩展程序执行此操作)。但我不确定如何处理这个问题?我无法找到有关该主题的任何可用指南。


  

加载我需要的SKU / QTY的代码
    {{layout handle =“sales_email_order_items”order = $ order}}
   我认为此代码使用的文件:
     ../default/store/template/email/order/items/order/default.phtml      ../默认/存储/模板/电子邮件/顺序/ items.phtml

或者是否有一种更直接,更简单的方法来获得我所需要的sku / qty。(pr。orderline)。

2 个答案:

答案 0 :(得分:1)

您应该能够为主题的布局添加新的布局句柄。我建议从sales_email_order_items重复sales.xml部分。

<sales_email_order_items>
    <block type="sales/order_email_items" name="items" template="email/order/items.phtml">
        <action method="addItemRender"><type>default</type><block>sales/order_email_items_order_default</block><template>email/order/items/order/default.phtml</template></action>
        <action method="addItemRender"><type>grouped</type><block>sales/order_email_items_order_grouped</block><template>email/order/items/order/default.phtml</template></action>
        <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>
    </block>
    <block type="core/text_list" name="additional.product.info" />
</sales_email_order_items>

在此下方复制并粘贴以下内容:

<admin_sales_email_order_items>
    <block type="sales/order_email_items" name="items" template="email/admin/order/items.phtml">
        <action method="addItemRender"><type>default</type><block>sales/order_email_items_order_default</block><template>email/admin/order/items/order/default.phtml</template></action>
        <action method="addItemRender"><type>grouped</type><block>sales/order_email_items_order_grouped</block><template>email/admin/order/items/order/default.phtml</template></action>
        <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>
    </block>
    <block type="core/text_list" name="additional.product.info" />
</admin_sales_email_order_items>

在转到管理员的交易电子邮件中,您需要将{{layout handle="sales_email_order_items" order=$order}}更改为{{layout handle="admin_email_order_items" order=$order}}

答案 1 :(得分:0)

更改上述'Adam Paterson'解决方案中的代码行

<admin_sales_email_order_items> and </admin_sales_email_order_items>

<sales_email_admin_order_items> and </sales_email_admin_order_items>

在转至管理员的跨国电子邮件中,您需要更改

<强> 应用程序/区域/ EN_US /模板/ youradminnotificationemailtemplatename.html

 {{layout handle="sales_email_order_items" order=$order}} 

 {{layout handle="sales_email_admin_order_items" order=$order}}

在主题的电子邮件文件夹下创建一个文件夹“admin”,并在管理文件夹中复制粘贴订单文件夹。

现在,您可以根据需要修改 sales / admin / orders / items / order / default.phtml 文件。