在WooCommerce电子邮件模板中手动输出字段

时间:2017-01-20 作者:Muad_Dib

我想为下订单时发送给客户的电子邮件建立一个自定义电子邮件模板。我会参考customer-processing-order.php 文件其中有两个操作显示订单详细信息do_action( \'woocommerce_email_order_meta\', $order, $sent_to_admin, $plain_text, $email ); 和客户详细信息do_action( \'woocommerce_email_customer_details\', $order, $sent_to_admin, $plain_text, $email );.

深入挖掘我看到了email-customer-details.php 有一个foreach循环输出此函数的内容echo wp_kses_post( $field[\'value\']. 在里面email-addresses.php 使用此功能显示地址<?php echo $order->get_formatted_billing_address(); ?>.

我想做的是构建一个电子邮件模板,手动解析每个字段。如何逐字段输出上述函数的内容?我想在它们之间混合字段

Customer Name
Customer Address
Customer Phone
Custom checkout fields that I built
Customer shipping address 
是否有办法手动显示客户详细信息和帐单地址中的每个字段?

非常感谢。

1 个回复
SO网友:Andris Gauračs

最简单的方法可能是通过在中创建WooCommerce电子邮件地址模板的副本,手动构建新的帐单地址格式/your-theme-driectory/woocommerce/emails/email-addresses.php 通过替换原始回声$order->get_formatted_billing_address(); 例如:

$output  = \'<strong>Customer Name: </strong>\'.get_post_meta($order->id, \'_billing_first_name\', true).\'<br>\';
$output .= \'<strong>Customer Last Name: </strong>\'.get_post_meta($order->id, \'_billing_last_name\', true).\'<br>\';
$output .= \'<strong>Company Name: </strong>\'.get_post_meta($order->id, \'_billing_company\', true).\'<br>\';
$output .= \'<strong>Country: </strong>\'.WC()->countries->countries[get_post_meta($order->id, \'_billing_country\', true)].\'<br>\';
echo $output;

相关推荐

Templates and meta

我想将CPT中的一些自定义字段传递给帖子。我有一些代码,但我不知道如何“集成”它。我正在WP模板中做一些事情(这不是我的,这是主要问题)。Code 我有这个single-job.php, 这是-从单个复制。php—CPT的post模板。<?php /** * Job Post */ if( defined(\'FW\') ) : $elements = jevelin_option( \'post_elements\' ); if(