programing

워드프레스 - meta_query와 tax_query를 함께 사용?

starjava 2023. 9. 14. 21:34
반응형

워드프레스 - meta_query와 tax_query를 함께 사용?

제가 지금까지 사용하려고 했는데요.tax_query그리고.meta_query함께WP_Query논쟁을 벌이지만, 어떤 이유에서인지 그것은 효과가 없는 것 같습니다.

내 코드는:

$args = array (
    'meta_key' => 'ratings_average',
    'orderby' => 'meta_value_num',
    'order' => 'DESC',
    'meta_query' => array(
        'relation' => 'AND',
        array(
            'key'      => 'eventstart',
            'compare'  => '>=',
            'value'    => $tonight, 
        ),
        array(
            'key'      => 'eventstart',
            'compare'  => '<',
            'value'    => $tomorow, 
        ),
    ),
    'tax_query' => array(
        array(
            'taxonomy' => 'Music',
            'field'    => 'slug',
            'terms'    => 'fri'
        ),
    ),
);  

$my_query = new WP_Query( $args );

내가 코드 어디서 잘못되고 있는지 아는 사람?어떤 도움이라도 주시면 감사하겠습니다.

끝나고print_r($args), 다음과 같은 결과를 얻을 수 있습니다.

Array (
    [meta_key] => ratings_average
    [orderby] => meta_value_num
    [order] => DESC
    [meta_query] => Array (
        [relation] => AND
        [0] => Array (
            [key] => eventstart
            [compare] => >=
            [value] => 17/04/14 00:00
        )
        [1] => Array (
            [key] => eventstart
            [compare] => <
            [value] => 18/04/14 00:00
        )
    )
    [tax_query] => Array (
        [0] => Array (
            [taxonomy] => Music
            [field] => slug
            [terms] => fri
        )
    )
)

여기 시나리오에 사용 중인 작업용 토막글이 있습니다. 필요에 따라 수정합니다.

// Bring post from the global context (if not present already).
global $post;

// Define the post_type's to query for.
$post_types = array( 'event', 'post', 'book' );

// Do the weird query. 
// Play with, or add arguments as needed https://codex.wordpress.org/Class_Reference/WP_Query
$results = WP_Query(
        array(
            'post_type' => $post_types,
            'tax_query' => array(
                array(
                    'taxonomy' => 'category',
                    'terms' => wp_get_post_categories( $post->ID )
                )
            ),
            'meta_query' => array(
                'relation' => 'OR',
                array(
                    'key'     => 'presenters_people',
                    'value'   => $post->ID,
                    'compare' => 'LIKE'
                ),
                array(
                    'key'     => 'author',
                    'value'   => $post->ID,
                    'compare' => 'LIKE'
                )
            )
        )
    );

이 코드를 사용해 보세요.

$args = array (
    'meta_key' =>'ratings_average',
    'orderby'=>'meta_value_num',
    'order' =>'DESC',
    'meta_query' => array(
        'relation' => 'AND',
        array(
        'key'       => 'eventstart',
        'compare'   => '>=',
        'value'     =>  $tonight,   
        ),
        array(
        'key'       => 'eventstart',
        'compare'   => '<',
        'value'     =>  $tomorow,   
        )
    ),
    'tax_query' => array(
        array(
        'taxonomy' => 'Music',
        'field' => 'slug',
        'terms' => 'fri',
        'operator'  => 'IN'
        )
    ),
);  

$my_query = new WP_Query($args);

언급URL : https://stackoverflow.com/questions/23134141/wordpress-using-meta-query-and-tax-query-together

반응형

'programing' 카테고리의 다른 글

문자열을 시간으로 변환  (0) 2023.09.14
열의 개수  (0) 2023.09.14
Mac용 좋은 CIDE?  (0) 2023.09.14
열에서 항목 발생 빈도를 백분율로 가져옵니다.  (0) 2023.09.14
XML에서 특성 값 가져오기  (0) 2023.09.14