programing

Woocommerce의 WP_query에서 카탈로그에 표시되는 제품 가져오기

newnotes 2023. 3. 6. 21:29
반응형

Woocommerce의 WP_query에서 카탈로그에 표시되는 제품 가져오기

현재 카탈로그에 보이는 카테고리 페이지에 있는 모든 상품을 입수하려고 합니다.여기서 시험해 봤지만, 이 문의가 있는 제품은 없습니다.

$args = array(
    'post_type'   => 'product',
    'product_cat' => get_queried_object()->slug,
    'meta_query'  => array(
        array(
            'key'     => '_visibility',
            'value'   => array( 'catalog', 'visible' ),
            'compare' => 'IN',
        )
    )
);
$loop = new WP_Query( $args );

var_dump( $loop );

를 삭제했을 때meta_query가시성 부분 숨겨진 것을 포함해서 모든 제품을 구하는데 눈에 보이는 것만 있으면 돼요.여기 무슨 일 있어?

대신 tax 쿼리여야 합니다(woocommerce 3 이후 커스텀 분류법에 의해 처리됩니다).

$loop = new WP_Query(array(
    'post_type'   => 'product',
    'product_cat' => get_queried_object()->slug,
    'tax_query'   => array( array(
        'taxonomy'  => 'product_visibility',
        'terms'     => array( 'exclude-from-catalog' ),
        'field'     => 'name',
        'operator'  => 'NOT IN',
    ) )
) );

var_dump( $loop );

이제 효과가 있는 게 좋을 거야

언급URL : https://stackoverflow.com/questions/53658379/get-products-which-are-visible-in-catalog-in-a-wp-query-on-woocommerce

반응형