You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何动态修改WooCommerce邮件通知中的票号字符串格式

解决WooCommerce自动邮件中票号格式替换问题

当然可以通过代码动态修改WooCommerce自动邮件里的字符串,不用写大量代码,用正则匹配替换就能搞定。

直接利用WooCommerce的邮件内容过滤钩子,添加以下代码即可实现需求:

add_filter( 'woocommerce_email_content', 'replace_ticket_number_format_in_emails', 20, 2 );
function replace_ticket_number_format_in_emails( $content, $email ) {
    // 仅针对订单类邮件(可根据实际需要调整邮件类型)
    if ( str_contains( $email->id, 'customer_' ) || str_contains( $email->id, 'admin_' ) ) {
        // 正则匹配并替换票号格式
        $content = preg_replace( '/SECOND: (\d+)/', 'MIN: 0 SEC: $1', $content );
    }
    return $content;
}

使用说明:

  • 把这段代码复制到你的WordPress主题的functions.php文件末尾,或者用Code Snippets这类自定义代码插件添加(推荐用插件,避免主题更新丢失代码)。
  • 代码里的条件会过滤所有客户和管理员的订单邮件,如果你只想针对特定邮件(比如客户完成订单邮件),可以把条件改成if ( $email->id === 'customer_completed_order' )。
  • 如果票号里除了数字还有其他字符(比如字母),可以把正则表达式改成/SECOND: (\w+)/来匹配字母数字组合。

这个方法会在邮件发送前自动替换目标字符串,完全不需要修改插件或模板文件,符合你的需求。

内容的提问来源于stack exchange,提问作者Ben

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 18:04:57