programing

post_date_gmt 대신 post_meta date 쿼리

muds 2023. 10. 23. 22:11
반응형

post_date_gmt 대신 post_meta date 쿼리

저는 6개월 전 쇼 포스트를 사용하기 위해 쿼리를 제한하고 있는데 잘 작동합니다.

하지만 저는 그것이 그 안에 있는 날짜를 기준으로 해야 합니다.post_meta'post_date_gmt' 대신 테이블을 선택합니다.

제 경우에는 meta_keys가 호출되고 값은 물론 예를 들어 날짜와 같습니다.

$months_ago = 6;
$args = array(
'date_query' => array(
    array(
        'column' => 'post_date_gmt',
        'after'  => $months_ago . ' months ago',
        )
    ),
'numberposts'   => -1
);

여기서 확인하세요: https://codex.wordpress.org/Class_Reference/WP_Query#Custom_Field_Parameters

예제를 스크롤하면 다음을 볼 수 있습니다.

사용자 지정 필드 키가 설정된 날짜이고 사용자 지정 필드 값이 현재인 게시물을 표시합니다.날짜가 지나지 않은 게시물만 표시합니다.

$args = array(
    'post_type'    => 'event',
    'meta_key'     => 'event_date',
    'meta_value'   => date( "Ymd" ), // change to how "event date" is stored
    'meta_compare' => '>',
);
$query = new WP_Query( $args );

당신의 경우 다음과 같은 것을 넣을 수 있습니다.date( "dmY", strtotime( '6 months ago' ) )

다음 코드를 사용해 보십시오.

$sixmonthagodate = date( "d-m-Y", strtotime('-6 Months') );

$args = array(
    'post_type'    => 'post',
    'posts_per_page' => -1,
    'meta_key'     => 'payment_date',
    'meta_value'   => $sixmonthagodate,
    'meta_compare' => '>',
);
$query = new WP_Query( $args );

워드프레스 사이트에서 post_type이 참인지 확인합니다.

첫번째 일date_query에 작용하는.post_date_gmt. 메타 필드에서 게시물을 조회하려면 를 사용해야 합니다.

다음은 샘플 코드입니다.

$months_ago = 6;
$args = [
    //...
    //...
    'posts_per_page' => -1, // Unlimited posts
    //...
    //...
    'meta_query' => [
        'relation' => 'AND',
        [
            'key' => 'payment_date',
            'value' => date('d-m-Y', strtotime($months_ago . ' months ago')), //<-- Converting date into your custom date format
            'compare' => '>', //you can also use <=, >=, <, etc..
            'type' => 'DATE'
        ],
    ]
];

$query = new WP_Query($args);

if ($query->have_posts()) :
    /* Start the Loop */
    while ($query->have_posts()) : $query->the_post();

    //you post

    endwhile;
endif;

위의 코드가 당신에게 적합할 것입니다.

관련 질문:

도움이 되길 바랍니다!

언급URL : https://stackoverflow.com/questions/43301666/query-post-meta-date-instead-of-post-date-gmt

반응형