从订单电子邮件中删除sku号码 - magento

时间:2014-01-21 13:26:25

标签: magento-1.7

我对magento&使用1.7版。我想在客户下订单时从订单电子邮件中删除sku号码。经过大量的R& D我注意到,使用的模板来自app/design/frontend/base/default/template/email/order/items.phtml,产品名称,sku编号,数量和价格来自echo $this->getItemHtml($_item)这一行。我不是很清楚,我应该如何从这一行中删除sku数字列? 或者还有其他方法吗?

任何帮助表示赞赏。 感谢。

2 个答案:

答案 0 :(得分:2)

让我向您解释所有过程。

您可以在app / locale / en_US / template / email / sales / order_new.html找到订单电子邮件模板。 在此文件中,您可以在第no行找到此行{{layout handle="sales_email_order_items" order=$order}}。 97

在这里您可以看到句柄是“sales_email_order_items”,您可以在app \ design \ frontend \ base \ default \ layout \ sales.xml行号中找到此块。 268。

<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" />

在此块中,您可以看到文件路径“email / order / items.phtml(app \ design \ frontend \ base \ default \ template \ email \ order \ items.phtml)”

在此文件中只需评论此代码 第{0}行<th align="left" bgcolor="#EAEAEA" style="font-size:13px; padding:3px 9px"><?php echo $this->__('Sku') ?></th> 33

现在在上面的块上你可以看到另一个文件路径'email \ order \ items \ order \ default.phtml(app \ design \ frontend \ base \ default \ template \ email \ order \ items \ order \ default.phtml )'

在此文件中,只需在第0行注释此代码<td align="left" valign="top" style="font-size:11px; padding:3px 9px; border-bottom:1px dotted #CCCCCC;"><?php echo $this->htmlEscape($this->getSku($_item)) ?></td>即可。 48。

完成。

答案 1 :(得分:0)

在Magento 2.3中,“ sales_email_order_renderers.xml”呈现了phtml.file,该文件定义了订单电子邮件中商品的内容。

要删除SKU,可以执行以下步骤:

  • 创建模块(例如COMPANY / SAMPLE)
  • 从/ vendor / magento / module-sales / view / frontend / layout /复制“ sales_email_order_renders.xml”到/ app / code / COMPANY / SAMPLE / view / frontend / layout /
  • 从/ vendor / magento / module-sales / view / frontend / templates / email / items / order /复制“ default.phtml”到/ app / code / COMPANY / SAMPLE / view / frontend / templates / email /项目/订单/
  • 更新模块中的“ sales_email_order_renders.xml”以在模块中呈现“ default.phtml”(请参见以下示例)

    <?xml version="1.0"?>
    <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd" label="Email Creditmemo Items List" design_abstraction="custom">
     <body>
        <referenceBlock name="sales.email.order.renderers">
            <block class="Magento\Sales\Block\Order\Email\Items\Order\DefaultOrder" name="sales.email.order.renderers.default" as="default" 
                    template="COMPANY_SAMPLE::email/items/order/default.phtml"/>
        </referenceBlock>
    </body>
    

    • 从default.phtml
    • 删除SKU
    • 清除缓存(php bin / magento缓存:刷新)