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

如何修改WooCommerce购物车通知中‘CONTINUE SHOPPING’文本及按钮顺序?

解决WooCommerce购物车通知的两个问题:修改按钮文本与调整元素顺序

一、修改“CONTINUE SHOPPING”按钮文本

你之前的代码未生效,大概率是主题或其他插件已覆盖wc_add_to_cart_message_html的默认输出,或过滤器优先级不足。推荐两种可靠方案:

方法1:精准替换默认文本

使用gettext过滤器直接替换WooCommerce内置的按钮文本,不受主题结构影响:

add_filter( 'gettext', 'custom_continue_shopping_text', 20, 3 );
function custom_continue_shopping_text( $translated_text, $text, $domain ) {
    if ( 'woocommerce' === $domain && 'Continue shopping' === $text ) {
        $translated_text = '继续购物'; // 替换为你需要的自定义文本
    }
    return $translated_text;
}

方法2:重写通知完整结构(同时解决顺序调整)

若需同时调整按钮与提示信息的顺序,直接重写整个通知的HTML结构更高效,设置高优先级(如999)确保覆盖主题自定义:

add_filter( 'wc_add_to_cart_message_html', 'custom_add_to_cart_message_with_order', 999, 2 );
function custom_add_to_cart_message_with_order( $message, $products ) {
    // 自定义提示文本
    $custom_message = '商品已添加到购物车,感谢您的选购!';
    // 获取继续购物按钮跳转链接
    $continue_shopping_url = wc_get_page_permalink( 'shop' );
    // 生成按钮HTML,替换自定义文本
    $button_html = sprintf(
        '<a href="%s" class="button wc-forward">%s</a>',
        esc_url( $continue_shopping_url ),
        esc_html__( '继续购物', 'woocommerce' )
    );
    // 调整元素顺序:按钮在前,提示文本在后(如需调换顺序,交换两者位置即可)
    $message = '<div class="woocommerce-message" role="alert">' . $button_html . ' ' . $custom_message . '</div>';
    
    return $message;
}

二、调整按钮与提示信息的顺序

通过上述方法2可直接控制顺序:

  • 按钮在前:保留$button_html . ' ' . $custom_message的拼接顺序
  • 按钮在后:修改为$custom_message . ' ' . $button_html

注意事项

  1. 代码需添加至主题functions.php文件末尾,或使用自定义代码插件(如Code Snippets)
  2. 测试前清空网站缓存,避免旧输出干扰结果
  3. 若主题有自定义购物车通知模板,建议优先使用过滤器方案,避免修改主题文件影响后续更新

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 17:03:25