当客户在WooCommerce中重置密码时,过滤发送给客户的电子邮件的主题和消息



经过长时间的搜索,当客户在WooCommerce中重置密码时,我找不到一个钩子来过滤主题和发送给客户的电子邮件有这样的吗

我需要从默认的Password Reset Request for {site_title}主题中删除(或替换(网站标题,与消息相同,不需要触摸模板。

我找到了WC_Email_Customer_Reset_Password类,但在那里没有看到筛选器。

在@7uc1f3r的帮助下,我找到了解决问题的方法。对于电子邮件主题,我使用了woocommerce_email_subject_customer_reset_password过滤器,对于电子邮件内容,您可以在此处和此处找到woocommerce_mail_content过滤器。

/** Filter the subject of reset password email notification **/
add_filter( 'woocommerce_email_subject_customer_reset_password', function( $subject ) {
// woocommerce_mail_content will fire only on customer password reset
add_filter( 'woocommerce_mail_content', 'wc_retrieve_password_message' );
$subject = 'Password Reset Request';
return $subject;
} );
/** Filter the content of reset password email notification **/
function wc_retrieve_password_message( $message ) {
$blogname = get_option( 'blogname' );
if( str_contains( $message, $blogname ) ) {
$message = str_replace( $blogname, home_url(), $message );
}
return $message;
}

相关内容

  • 没有找到相关文章

最新更新