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

WooCommerce Blocks:如何修改缺货产品展示的Read More按钮

你可以直接在Gutenberg产品块的过滤函数中增加库存判断逻辑,对按钮内容做替换即可,修改后的完整代码如下:

add_filter( 'woocommerce_blocks_product_grid_item_html', 'custom_product_grid_out_of_stock_button', 9999, 3 );
 
function custom_product_grid_out_of_stock_button( $html, $data, $product ) {
    // 判断产品是否缺货,缺货则替换按钮内容
    if( !$product->is_in_stock() ){
        $data->button = '<a class="button disabled wc-block-grid__product-add-to-cart" style="color:#000;background-color:#fff;border: 1px solid #ddd;pointer-events:none;">'.__('Out of stock', 'woocommerce').'</a>';
    }

   return "<li class=\"wc-block-grid__product\">
            <a href=\"{$data->permalink}\" class=\"wc-block-grid__product-link\">
               {$data->image}
               {$data->title}
            </a>
            {$data->price}
            {$data->rating}
            {$data->button}
         </li>";
}

注意事项

  • 这段代码和你之前用来修改列表页按钮的代码不冲突,两段可同时放在主题/子主题的functions.php文件中,分别作用于Gutenberg产品块和默认商品列表页
  • 代码中添加了pointer-events:none样式,避免缺货状态的按钮被用户误点击,你可以根据自身需求调整按钮的样式属性,匹配全站设计风格
  • 修改后如果没有立即生效,清空网站缓存、CDN缓存以及浏览器缓存后再测试即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 07:15:04