[英]Exclude downloadable products from shop pages in Woocommerce
我正在開發一個同時包含實體產品和可下載產品的Woocommerce商店。 我想更改循環的標准查詢,以排除所有可下載的產品,但是我找不到解決方法。 我希望這些產品僅顯示在某個存檔頁面上,這是沒有問題的。
我正在使用pre_get_post對查詢進行其他一些更改,但似乎找不到可下載產品的選項。
我所有的產品都是簡單的產品。
任何幫助將不勝感激!
除了使用pre_get_post
,還可以使用專用的woocommerce_product_query
Woocommerce操作掛鈎。 但是由於可下載產品與元查詢相關,因此最好使用woocommerce_product_query_meta_query
Woocommerce專用過濾器掛鈎。
它將僅從商店頁面刪除可下載的產品:
add_filter( 'woocommerce_product_query_meta_query', 'downloadable_not_in_shop', 20, 2 );
function downloadable_not_in_shop( $meta_query, $query ) {
// Only on archive pages
if( is_admin() || ! is_shop() )
return $meta_query; // exit
$meta_query[] = array(
'key' => '_downloadable',
'value' => 'yes',
'compare' => '!=',
);
return $meta_query;
}
代碼進入您的活動子主題(或主題)的function.php文件中。 經過測試和工作。
要僅顯示可下載的產品,您將使用
'compare' => '=',
而不是…
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.