在我的wooCommerce商店里,我有两种分类法
1. Product Category
2. Services Category
Shop 页面显示了这两个类别的所有产品。我想从商店中排除产品;中的搜索结果页
Services Category.
这辆车是通过pre\\u get\\u posts实现的吗?但我认为它不会在wooCommerce商店页面上运行。
让我知道做这件事的最佳方法是什么。对此的任何挂钩或操作。
非常感谢。任何帮助都将不胜感激。
SO网友:Ghighi Eftimie
这可能有助于您了解店铺页面列表:
https://docs.woocommerce.com/document/exclude-a-category-from-the-shop-page/
对于搜索页面,以下是一个可能有帮助的片段:
function exclude_services_category_products_from_search( $query ) {
if ( is_search() && !is_admin() ) {
$array_with_service_category_id = [];
$tax_query = $query->get( \'tax_query\' ) ?: [];
$tax_query[] = [
\'taxonomy\' => \'product_cat\',
\'terms\' => $array_with_service_category_id,
\'field\' => \'term_id\',
\'operator\' => \'NOT IN\'
];
$query->set( \'tax_query\', $tax_query );
}
return $query;
}
add_filter( \'pre_get_posts\', \'exclude_services_category_products_from_search\' );
只需添加
Service Category $array\\u with\\u service\\u category\\u id数组中的id。