![](/img/trans.png)
[英]How can I remove the product/inventory count from the shop page on Woocommerce?
[英]Woocommerce - Remove the available product inventory number from the shop page
在显示我的电子商务商店中所有产品的商店页面上,它当前显示产品名称旁边的产品计数(库存)编号,如下所示:
我发现并尝试使用此代码:
add_filter( 'woocommerce_subcategory_count_html', 'woo_remove_category_products_count' );
function woo_remove_category_products_count() {
return;
}
但它不起作用,因为它删除了单个产品页面上的“仅剩5个库存”通知,而这不是我需要的。
然后我尝试使用CSS:
.count {
display: none !important;
}
但也不起作用。
我真的希望有人有解决方案。 所有建议都非常欢迎,并感谢您的提前努力!
@ Update1:
试试这个片段代码功能(没有担保,因为未经测试) ,但从逻辑上讲它应该完成这项工作(参见下面模板的摘录) :
remove_action( 'woocommerce_before_shop_loop', 'woocommerce_result_count', 20 );
或者:
add_action('init', function(){
remove_action( 'woocommerce_before_shop_loop', 'woocommerce_result_count', 20 );
}
首先找到该计数中涉及的函数: woocommerce_result_count()
。
然后我找到相关的钩子:
以下是显示钩子的模板archive-product.php
的摘录:
<?php
/**
* woocommerce_before_shop_loop hook.
*
* @hooked woocommerce_result_count - 20 <==== ==== ==== ==== Here @@@ !
* @hooked woocommerce_catalog_ordering - 30
*/
do_action( 'woocommerce_before_shop_loop' );
?>
@ update2: - 这也有效(参见update3:替代方案)
最后一次尝试基于这个旧线程(见最后) ,覆盖商店页面上的本机函数:
add_action('init', function(){
if(is_shop()){
function woocommerce_result_count(){
return;
}
}
}
或者:
if(is_shop()){
function woocommerce_result_count(){
return;
}
}
@ update3: - 其他工作解决方案(覆盖模板文件)
函数woocommerce_result_count()
引用loop/result-count.php
WooCommerce模板,正如您在此源提取中所看到的:
if ( ! function_exists( 'woocommerce_result_count' ) ) {
/**
* Output the result count text (Showing x - x of x results).
*
* @subpackage Loop
*/
function woocommerce_result_count() {
wc_get_template( 'loop/result-count.php' );
}
}
在: loop/result-count.php
WooCommerce模板中,添加: || is_shop()
|| is_shop()
到if
语句(第27行) ,这样:
<?php
/**
* Result Count
*
... / ...
* @version 2.0.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
global $wp_query;
// @@@ Here we avoid count on shop page <==== ==== ==== ==== ADDING " || is_shop() "…
if ( ! woocommerce_products_will_display() || is_shop() )
return;
/*
... / ...
*/
这次工作有效......
参考: 通过主题覆盖模板(+模板结构)
好的,请登录wordpress并转到WooCommerce>设置>库存(标签)
然后将库存显示格式设置为永不显示库存信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.