从 Woocommerce 主页上的简码隐藏促销产品
Hide on sale products from a shortcode on homepage in Woocommerce
我试图隐藏主页上使用 Woocommerce 短代码显示产品的所有销售产品。我是新来的,在上下搜索之后,我找不到解决方案。
我试过使用 Hide all on sale products on Woocommerce shop page 答案代码,它在商店页面上有效。
有没有办法将此代码应用到主页而不是商店页面?
我试过这个稍微修改过的版本:
add_filter( 'woocommerce_product_query_meta_query', 'on_sale_products_not_in_archives', 10, 2 );
function on_sale_products_not_in_archives( $meta_query, $query ) {
// For woocommerce shop pages
if( is_page( 87 ) ){
$meta_query[] = array(
'key' => '_sale_price',
'value' => '',
'compare' => '=',
);
}
return $meta_query;
}
但是没有用。
如有任何帮助,我们将不胜感激。
要使用短代码过滤产品查询,您需要使用 woocommerce_shortcode_products_query
过滤器挂钩,但这适用于除可变产品之外的所有产品。
代码(仅针对主页):
add_filter( 'woocommerce_shortcode_products_query', 'hide_on_sale_products_in_home', 50, 3 );
function hide_on_sale_products_in_home( $query_args, $atts, $loop_name ){
if( is_front_page() ){
$query_args['meta_query'] = array( array(
'key' => '_sale_price',
'value' => '',
'compare' => '=',
) );
}
return $query_args;
}
代码进入您的活动子主题(或活动主题)的 function.php 文件。测试和工作。
我试图隐藏主页上使用 Woocommerce 短代码显示产品的所有销售产品。我是新来的,在上下搜索之后,我找不到解决方案。
我试过使用 Hide all on sale products on Woocommerce shop page 答案代码,它在商店页面上有效。
有没有办法将此代码应用到主页而不是商店页面?
我试过这个稍微修改过的版本:
add_filter( 'woocommerce_product_query_meta_query', 'on_sale_products_not_in_archives', 10, 2 );
function on_sale_products_not_in_archives( $meta_query, $query ) {
// For woocommerce shop pages
if( is_page( 87 ) ){
$meta_query[] = array(
'key' => '_sale_price',
'value' => '',
'compare' => '=',
);
}
return $meta_query;
}
但是没有用。
如有任何帮助,我们将不胜感激。
要使用短代码过滤产品查询,您需要使用 woocommerce_shortcode_products_query
过滤器挂钩,但这适用于除可变产品之外的所有产品。
代码(仅针对主页):
add_filter( 'woocommerce_shortcode_products_query', 'hide_on_sale_products_in_home', 50, 3 );
function hide_on_sale_products_in_home( $query_args, $atts, $loop_name ){
if( is_front_page() ){
$query_args['meta_query'] = array( array(
'key' => '_sale_price',
'value' => '',
'compare' => '=',
) );
}
return $query_args;
}
代码进入您的活动子主题(或活动主题)的 function.php 文件。测试和工作。