在WooCommerce电子邮件通知中将发件人名称更改为客户帐单全名

时间:2020-07-21 07:24:58

标签: php wordpress woocommerce email-notifications user-data

如何使用woocommerce_email_from_name钩将电子邮件发件人名称更改为客户“帐单名和姓氏”?

例如:“我的商店”应更改为“约翰·多伊”。

基于 Change sender name and email address for specific WooCommerce email notifications 答案代码,这是我的功能:

    add_filter( ‘woocommerce_email_from_name’, function( $from_name, $wc_email ){
if( $wc_email->id == ‘customer_processing_order’ )
// $from_name = ‘Jack the Ripper’;
$from_name = get_user_meta( $user_id, ‘first_name’, true, $user_id, ‘last_name’, true );
//$from_name = get_user_meta( $user_id, ‘first_name’, true );
return $from_name;
}, 10, 2 );

ut不起作用。谁能帮我吗?

1 个答案:

答案 0 :(得分:1)

以下内容将Woocommerce电子邮件通知上的“从名称”更改为客户帐单全名:

add_filter( 'woocommerce_email_from_name', 'filter_wc_email_from_name', 10, 2 );
function filter_wc_email_from_name( $from_name, $email ){
    if( is_a($email->object, 'WC_Order') ) {
        $order     = $email->object;
        $from_name = $order->get_formatted_billing_full_name();
    }
    return $from_name;
}

代码会出现在您活动的子主题(或主题)的function.php文件中,或者出现在任何插件文件中。


添加:对于“新订单电子邮件通知,您将使用:

add_filter( 'woocommerce_email_from_name', 'filter_wc_email_from_name', 10, 2 );
function filter_wc_email_from_name( $from_name, $email ){
    if( $email->id == 'new_order' && is_a($email->object, 'WC_Order') ) {
        $order     = $email->object;
        $from_name = $order->get_formatted_billing_full_name();
    }
    return $from_name;
}

代码会出现在您活动的子主题(或主题)的function.php文件中,或者出现在任何插件文件中。

相关:Change sender name and email address for specific WooCommerce email notifications