Php 如何一次在全球范围内自定义WooCommerce产品查询?

Php 如何一次在全球范围内自定义WooCommerce产品查询?,php,wordpress,woocommerce,product,Php,Wordpress,Woocommerce,Product,我想按在WooCommerce中属于产品属性的位置查询产品。我想在整个网站(包括档案)中应用此查询。我尝试使用woocommerce\u product\u query,但没有成功。请帮助我达到我的要求 function g_filter_products_by_location( $q ){ $tax_query = $q->get( 'tax_query' ); $tax_query[] = array( array( 'taxo

我想按在WooCommerce中属于
产品属性的位置查询产品。我想在整个网站(包括档案)中应用此查询。我尝试使用
woocommerce\u product\u query
,但没有成功。请帮助我达到我的要求

function g_filter_products_by_location( $q ){
    $tax_query = $q->get( 'tax_query' );
    $tax_query[] = array(
        array(
            'taxonomy' => 'pa_locations',
            'field' => 'slug',
            'terms' => array( 'location1' )
        )
    );
    $q->set( 'tax_query', $tax_query );
}
add_action( 'woocommerce_product_query', 'g_filter_products_by_location' );

如果您在归档页面上执行类似的税务查询,您只会筛选变体,而这些变体无论如何都不应该显示在归档页面上。。。对吗?如果变体中有
位置2
,则产品不应显示在存档页上。我认为没有必要在存档页上进行筛选。您所拥有的。。。当我尝试它时,它正在工作。只有具有“location1”的产品才会显示。其他任何东西都不会出现在归档页面中,包括商店页面。这很奇怪,它在我的页面上不起作用。我有
WooCommerce 4.0.1
,您有什么版本的
woo
?如果您在存档页面上执行类似的税务查询,您只会筛选变体,而这些变体无论如何都不应该显示在存档中。。。对吗?如果变体中有
位置2
,则产品不应显示在存档页上。我认为没有必要在存档页上进行筛选。您所拥有的。。。当我尝试它时,它正在工作。只有具有“location1”的产品才会显示。其他任何东西都不会出现在归档页面中,包括商店页面。这很奇怪,它在我的页面上不起作用。我有
WooCommerce 4.0.1
,你们有什么版本的
woo