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

WooCommerce促销商品名称添加NET无效,请求排查问题

修复WooCommerce促销商品标题添加"NET"的问题

原代码未生效是因为存在几个关键问题,直接看修正后的代码和说明:

修正后的代码

function change_product_titles( $title, $product ) {
    // 判断商品是否处于促销状态
    if ( $product->is_on_sale() ) {
        return $title . ' NET';
    } else {
        // 移除已有的" NET"后缀,避免重复添加
        return str_replace(' NET', '', $title);
    }
}
add_filter( 'woocommerce_product_title', 'change_product_titles', 10, 2 );

关键修改点

  • 参数顺序错误:woocommerce_product_title钩子的回调参数顺序是$title在前,$product在后,原代码写反了,导致参数接收完全错误
  • 对象调用问题:原代码里$post->get_id少了方法调用的括号(),而且钩子传递的是WC_Product对象而非WP_Post,不过改用内置方法后不需要直接调用get_id了
  • 促销判断逻辑优化:直接读取_sale_price元数据不严谨,WooCommerce内置的is_on_sale()方法会自动处理促销时间段、商品状态等情况,判断更准确
  • 补全移除逻辑:原代码只处理了添加"NET"的场景,新增的str_replace能确保商品退出促销时自动去掉后缀,避免重复叠加

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 15:04:54