当前位置:  开发笔记 > 编程语言 > 正文

在woocommerce_email_customer_details或电子邮件的任何其他部分中添加新字段

如何解决《在woocommerce_email_customer_details或电子邮件的任何其他部分中添加新字段》经验,为你挑选了1个好方法。

好的,所以我正在为客户建立一个woocommerce网站,他们喜欢它,但是唯一的问题是,他们需要一个客户号来与所有新订单的电子邮件一起发送。他们愿意为每个用户填写此信息,但是我无法确定如何获取此信息以自动随新订单电子邮件发送。

我正在使用WP-Members插件将自定义信息添加到用户个人资料,并在其中创建了一个名为Customer#(选项名称:customer_number)的字段。我无法弄清楚如何使woocommerce将此数字添加到他们发送的电子邮件中下订单(给管理员)

我尝试了许多不同的方法,似乎它应该只是一个钩子,但我不知道如何获取值,或者还无法以任何方式弄清楚。

我一直在看,这是我的不得已,我对php和hooks的最低了解可能是我的失败,因此,如果以这种方式指导我,请非常清楚。

我不会在这个问题上放弃,所以希望有人能提供帮助!



1> helgatheviki..:

我们可以从我的教程中改编自定义结帐字段,以在电子邮件中显示一些其他信息:

function kia_display_email_order_user_meta( $order, $sent_to_admin, $plain_text ) {
    $user_id = $order->customer_user;
    if( ! empty( $user_id ) && ( $data = get_user_meta( $user_id, '_some_user_meta', true ) ) != '' ){
        if( $plain_text ){
            echo 'The user data for some field is ' . $data;
        } else {
            echo '

The user data for some field is ' . $data . '

'; } } } add_action('woocommerce_email_customer_details', 'kia_display_email_order_user_meta', 30, 3 );

在这种情况下,我们将get_post_meta()get_user_meta().... 替换本教程的,并知道用户ID存储在对象的$order->customer_id属性中$order

推荐阅读
贾志军
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有