从Woocommerce中的产品类别窗口小部件中排除特定字词

时间:2018-02-11 11:10:24

标签: php wordpress woocommerce widget categories

我有一些未分类的产品,因为它们不属于任何特定的产品类别。

我想将产品保留在我的网站上的未分类组中(当人们搜索它时,当我在首页上显示它时),但我想隐藏类别下拉列表中的实际未分类标签所以人们看不到它。

我尝试了这段代码,但没有运气:

 // Do not include this if already open!
/**
 * Code goes in theme functions.php.
 */
add_filter( 'woocommerce_product_subcategories_args', 'custom_woocommerce_product_subcategories_args' );
function custom_woocommerce_product_subcategories_args( $args ) {
  $args['exclude'] = get_option( 'default_product_cat' );
  return $args;
}

在此图片中,您可以看到问题。它说“Ukategoriseret”,意思是未分类的:

enter image description here

1 个答案:

答案 0 :(得分:2)

我认为get_option( 'default_product_cat' )是自定义的,因为在测试时我没有得到任何输出。因此,您必须确保使用它获得术语ID。

我想你也在谈论产品类别小部件。如果是这种情况,您将需要使用其中一个挂钩,具体取决于显示选择的选项设置。

以下代码用于从产品类别窗口小部件中排除任何一组产品类别术语ID:

add_filter('woocommerce_product_categories_widget_dropdown_args', 'widget_product_categories_list_args', 10, 1);
add_filter('woocommerce_product_categories_widget_args', 'widget_product_categories_list_args', 10, 1);
function widget_product_categories_list_args( $args ) {

    $default_term_id = get_option( 'default_product_cat' );

    // Excluding: a term ID or coma separated term IDs
    $args['exclude'] = array( $default_term_id ); 

    return $args;
}

代码进入活动子主题(活动主题)的function.php文件。

经过测试和工作。