WooCommerce存档页面未输入库存数量时隐藏库存数量的代码调整需求
调整WooCommerce存档页库存状态显示逻辑
没问题,我帮你修改这段代码,实现你想要的效果:当未设置库存数量时,只展示库存状态文本,不显示具体数字;当有库存数量时,才同时显示数字和状态。
修改后的代码如下:
//* Add stock status to archive pages function envy_stock_catalog() { global $product; if ( $product->is_in_stock() ) { $stock_qty = $product->get_stock_quantity(); // 检查库存数量是否存在且不为空 if ( !empty($stock_qty) ) { echo '<div class="stock" >' . $stock_qty . __( ' in stock', 'envy' ) . '</div>'; } else { echo '<div class="stock" >' . __( 'in stock', 'envy' ) . '</div>'; } } else { echo '<div class="out-of-stock" >' . __( 'out of stock', 'envy' ) . '</div>'; } } add_action( 'woocommerce_after_shop_loop_item_title', 'envy_stock_catalog' );
改动说明:
- 新增了
$stock_qty变量存储库存数量,让逻辑判断更清晰 - 增加了
!empty($stock_qty)的条件检查:只有当库存数量存在且不为空时,才显示“X in stock”;否则只显示“in stock” - 保留了原有的缺货状态显示逻辑,确保缺货时的提示不受影响
内容的提问来源于stack exchange,提问作者ramin
相关产品推荐
相关产品推荐

