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

在OceanWP主题中按分类修改WooCommerce全页面缺货提示文本

问题原因

你编写的回调函数需要接收$text和$product两个参数,但add_filter函数默认仅向回调函数传递1个参数,导致归档页调用该钩子时$product变量不存在,分类判断逻辑无法正常运行。

修复后的完整代码

function my_woo_outofstock_text( $text, $product ) {
    $specific_categories = array( 'original-paintings' );
    
    if ( ! $product->is_in_stock() && has_term( $specific_categories, 'product_cat', $product->get_id() ) ) {
         $text = __( 'Sold', 'oceanwp' );
    }
    else {
        $text = __( 'Unavailable', 'oceanwp' );
    }        
    
    return $text;
}
// 第4个参数设为2,明确声明要接收2个传入参数
add_filter( 'ocean_woo_outofstock_text', 'my_woo_outofstock_text', 20, 2 );

生效说明

修改完成后清空网站缓存即可在商品单页和商店归档页同时生效,如果需要适配多个分类,直接把对应分类的别名追加到$specific_categories数组中即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 02:27:02