我试图从我的分类小部件中隐藏大量的分类。我尝试了一些插件,但似乎没有一个愿意让我使用下拉选项。我查看了widget\\u categories\\u args挂钩,这似乎是我想要的,但我无法让它工作。
总之这是我的密码
function widget_categories_args_filter( $cat_args ) {
$exclude_arr = array( 57,61,63,56,55,62,52,53,54,67,65 );
if( isset( $cat_args[\'exclude\'] ) && !empty( $cat_args[\'exclude\'] ) )
$exclude_arr = array_unique( array_merge( explode( \',\', $cat_args[\'exclude\'] ), $exclude_arr ) );
$cat_args[\'exclude\'] = implode( \',\', $exclude_arr );
return $cat_args;
}
add_filter( \'widget_categories_args\', \'widget_categories_args_filter\', 10, 1 );
我从这里取的:
https://codex.wordpress.org/Plugin_API/Filter_Reference/widget_categories_args我把这个放在我的主题函数中。php。即使函数是为插件设置的,这也不重要,对吗?
SO网友:jaripp
This works: https://gist.github.com/peltopiri/76e7d1143e33b424633114103cfae5ec
<?php
function exclude_woocommerce_widget_product_categories($widget_args) {
//Insert excluded category ids here
$excludes = array(12,33);
$includes = explode(",",$widget_args[\'include\']);
$includes = array_filter($includes, function($value) use ($excludes) {
return !in_array($value, $excludes);
});
$widget_args["include"] = implode(",", $includes);
return $widget_args;
}
add_filter( \'woocommerce_product_categories_widget_dropdown_args\', \'exclude_woocommerce_widget_product_categories\');
add_filter( \'woocommerce_product_categories_widget_args\', \'exclude_woocommerce_widget_product_categories\');
SO网友:jgangso
隐藏WooCommerce中的未分类/默认类别:
我想我并不是唯一一个来此页面寻找隐藏WooCommerce 3.3中引入的默认/未分类类别的方法的人。
如果您是其中之一,则可以使用以下代码段,而不是对类别ID进行硬编码,因为类别ID在不同的环境/安装中可能不同the snippet by Mike Jolley 要在Woocommerce产品类别小部件中隐藏它,请执行以下操作:
<?php // Do not include this if already open!
/**
* Code goes in theme functions.php.
*
* If you use dropdown instead of hierachical view,
* hook to the following filter instead:
* `woocommerce_product_categories_widget_dropdown_args`
*/
add_filter( \'woocommerce_product_categories_widget_args\', \'custom_woocommerce_product_categories_widget_args\' );
function custom_woocommerce_product_categories_widget_args( $args ) {
$args[\'exclude\'] = get_option( \'default_product_cat\' );
return $args;
}