将客户名称添加到WooCommerce电子邮件-Header.php标题

时间:2018-06-22 作者:Raghib shahriyer

enter image description here

我想更新标题“custommer\\u name为您发送了一份礼物”。它不起作用!!

<table border="0" cellpadding="0" cellspacing="0" width="600" id="template_header">
                <tr>
                    <td id="header_wrapper">
                        <h1><?php
                              $order = new WC_Order($order_id);
                              echo $order->get_billing_email() . $email_heading; 
                     ?></h1>
                    </td>
                </tr>
</table>

1 个回复
最合适的回答,由SO网友:Akshat 整理而成

为此,您需要重写类或创建自定义电子邮件类型,我可以给出一个简短提示,说明将在类中进行的修改,如果您不想在woocommerce更新中失去更改,您可以在子主题或插件中重写。

在里面/woocommerce/includes/emails/class-wc-email-customer-completed-order.php

第37行:

$this->placeholders   = array(
    \'{site_title}\'   => $this->get_blogname(),
    \'{order_date}\'   => \'\',
    \'{order_number}\' => \'\',
    \'{order_name}\' => \'\',
);
我在这里补充道{order_name},

然后在第86行

if ( is_a( $order, \'WC_Order\' ) ) {
    $this->object                         = $order;
    $this->recipient                      = $this->object->get_billing_email();
    $this->placeholders[\'{order_date}\']   = wc_format_datetime( $this->object->get_date_created() );
    $this->placeholders[\'{order_number}\'] = $this->object->get_order_number();
    $this->placeholders[\'{order_name}\'] = $this->object->get_billing_first_name();
}
在这里,我将名字定义为{order_name}, 现在,您可以在woocommerce电子邮件设置中使用此占位符,网址为/wp-admin/admin.php?page=wc-settings&tab=email&section=wc_email_customer_processing_order

结束

相关推荐