我正在尝试使用Woocommerce钩子来更改特定的电子邮件模板。 我想覆盖customer-processing-order.php
中的文本,并在functions.php
文件中customer-completed-order.php
。这是我正在使用的代码:
add_action( 'woocommerce_email_customer_details', 'hitt_processing_customer_email', 10, 4 );
function hitt_processing_customer_email( $order, $sent_to_admin, $plain_text, $email ) {
if( 'customer_processing_order' == $email->id ){
echo '<p>My custom content here</p>';
}
if( 'customer_completed_order' == $email->id ){
echo '<p>My custom content here</p>';
}
}
但这似乎不起作用。 我将自己设置为客户,当我收到"您的订单正在处理中"电子邮件时,它没有添加自定义文本。我做错了什么?
我意识到上面的代码可以工作,但它被放置在错误的位置,所以我没有看到更改,所以这里是修改后的代码,将文本放在默认文本下方但在价格表上方:
add_action( 'woocommerce_email_before_order_table', 'custom_content_to_processing_customer_email', 10, 4 );
function custom_content_to_processing_customer_email( $order, $sent_to_admin, $plain_text, $email ) {
if( 'customer_processing_order' == $email->id ){
echo '<p>Your custom text on the customer processing order</p>';
}
if( 'customer_completed_order' == $email->id ){
echo '<p>Your custom text on the customer completed order email.</p>';
}
}