如何自定义WooCommerce无库存通知电子邮件



请尝试自定义电子邮件,一旦产品缺货,该电子邮件将自动从WooCommerce发送给管理员。我检查了WooCommerce的相关设置,但它不在电子邮件中。

有没有一种方法可以自定义标题、正文和发件人?

您可以自定义WooCommerce缺货通知电子邮件,如下所示:

1( 。更改或添加收件人-woocommerce_email_recipient_no_stock过滤器挂钩:

代码示例:WooCommerce 中的更改库存电子邮件通知收件人


2(。更改电子邮件主题-woocommerce_email_subject_no_stock过滤器挂钩:

原始主题代码为(位于WC_Emailsno_stock()方法上(:

$subject = sprintf( '[%s] %s', $this->get_blogname(), __( 'Product out of stock', 'woocommerce' ) );

代码示例:在Woocommerce 中使用动态数据自定义电子邮件主题

您需要用$product替换$order,并使用WC_Product方法来避免错误。


3(。更改电子邮件内容-woocommerce_email_content_no_stock过滤器挂钩:

原始内容代码为(位于WC_Emailsno_stock()方法上(:

$message = sprintf( 
__( '%s is out of stock.', 'woocommerce' ), 
html_entity_decode( wp_strip_all_tags( $product->get_formatted_name() ), ENT_QUOTES, get_bloginfo( 'charset' ) ) 
);

所以你可以用这样的东西来改变它

add_filter( 'woocommerce_email_content_no_stock', 'custom_email_content_no_stock', 20, 2 );
function custom_email_content_no_stock( $content, $product ){

return sprintf( 
__( 'The product "%s" is actually out of stock.', 'woocommerce' ), 
html_entity_decode( wp_strip_all_tags( $product->get_formatted_name() ), ENT_QUOTES, get_bloginfo( 'charset' ) ) 
);
}

代码位于活动子主题(或活动主题(的functions.php文件中。它应该有效。


4(。自定义自:

请参阅:更改特定WooCommerce电子邮件通知的发件人姓名和电子邮件地址

不可能针对无库存电子邮件通知


所有可用的过滤器挂钩都位于WC_Emailsno_stock()方法上…

注意:永远不要使用$this变量,用$emails替换它,并在代码开头添加:

$emails = WC()->mailer; 

$emails = new WC_Emails();

最新更新