0 レビュー
2 回答
php-カスタムフィールドの日付フィールドに基づいて将来の投稿のみを取得します
Wordpressのページの今後のイベントからのみ投稿を受信しようとしています。今日の日付と比較するために将来の日付を設定できる日付カスタムフィールドがあります:
<?php
$date = new DateTime();
$posts = get_posts(array(
'posts_per_page' => -1,
'post_type' => 'post',
'post_status' => 'publish',
'category_name' => 'event',
'meta_key' => 'date',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'meta_query' => array(
'key' => 'date',
'value' => $date->getTimestamp(),
'type' => 'NUMERIC',
'compare' => '>'
)
)); ?>
これでもすべての投稿が表示されますが、どこが間違っているのか誰かに教えてもらえますか?
わからない
0
レビュー
答え :
解決策:
date
フィールドがACFDatePickerフィールドの場合、次のようなものが必要になります。 DatePickerフィールドは、値をタイムスタンプとして保存するのではなく、 Ymd
形式で保存します。
$ upcoming_events = get_posts(array(
'post_type' =>'イベント'、
'post_status' =>'publish'、
'posts_per_page' => -1
'meta_key' =>'date'、
'orderby' =>'meta_value_num'、
'order' =>'asc'、
'meta_query' => array(
'関係'=>'AND'、
配列(
'キー'=>'{-コード-1}'、
'比較'=>'>='、
'value' => date('Ymd')、
)。
)、
));
わからない
0
レビュー
答え :
解決策:
誰かがこれが便利だと思ったら、これが私が解決した方法です:
<?php
$date = new DateTime();
$today = $date->getTimestamp();
$posts = get_posts(array(
'posts_per_page' => -1,
'post_type' => 'post',
'post_status' => 'publish',
'category_name' => 'event',
'meta_key' => 'date',
'orderby' => 'meta_value_num',
'order' => 'ASC',
'meta_query' => array(
'relation' => 'AND',
array(
'key' => 'date',
'compare' => '>=',
'value' => $today,
)
)
));
?>
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。