我希望管理员电子邮件的电子邮件主题行根据产品类别进行更改。我查看了所有类似的堆栈溢出问题,但没有一个适用于 WooCommerece 3.8.0(参见this和this)。
我有的是这个
function custom_admin_email_subject( $subject, $order ) {
global $woocommerce;
foreach($order->get_items() as $item_id => $item ){
if ( has_term( 'Category 1 Name', 'product_cat' , $item->get_product_id() ) ) {
break;
$subject = sprintf( 'Category 1 Email Subject Line' );
}
}
return $subject;
}
add_filter('woocommerce_email_subject_new_order', 'custom_admin_email_subject', 1, 2);
我的代码只是返回新订单的默认电子邮件主题行(在 woocommerce/settings/email 中设置)。我不知道为什么我的函数不能识别类别名称。
谁能告诉我我的代码有什么问题?
我将此代码放在我的 child-theme/functions.php 文件中我正在运行 WooCommerce 3.8.0 和 WordPress 5.3