如何修改WooCommerce分类导航:让子分类点击直接跳转至商品列表
修改WooCommerce商品分类链接行为
默认WooCommerce会优先展示分类的子分类而非商品列表,以下是两种解决方法:
方法一:自定义代码实现
把下面的代码添加到当前主题的functions.php文件,或者用Code Snippets这类代码管理插件:
add_filter( 'woocommerce_product_category_query_args', 'force_category_display_products' ); function force_category_display_products( $query_args ) { if ( is_product_category() && ! is_admin() ) { // 同时显示商品和子分类,若只想显示商品,替换为 'product' $query_args['post_type'] = array( 'product', 'product_cat' ); // 可选:让商品优先显示 $query_args['orderby'] = 'post_type'; $query_args['order'] = 'ASC'; } return $query_args; }
如果需要点击分类时只展示该分类下的商品,不显示子分类,将代码中的array( 'product', 'product_cat' )改为'product'即可。
方法二:通过WooCommerce设置调整
- 进入WordPress后台 → WooCommerce → 设置 → 产品 → 显示
- 在“分类显示”选项中,选择“显示产品和子分类”或“仅显示产品”
- 保存设置
提示:部分主题可能会覆盖WooCommerce的默认设置,这种情况下优先使用代码方法。
内容的提问来源于stack exchange,提问作者cashrunner
相关产品推荐
相关产品推荐

