5日以上前のmessage
型の最新のコメントを持ち、comment_metaの値がpost_type=projects
であるすべての投稿post_status=publish
およびkey=value
を取得する必要があります。
get_posts()
関数で実行するクエリを準備する方法を知りたいです。
まず以下のコメントクエリを試すことができます。
$comments = get_comments(
[
'post_type' => 'projects',
'post_status' => 'publish',
'type' => 'message',
'date_query' => [
[
'before' => '5 days ago midnight',
'inclusive' => true,
]
],
'meta_query' => [
[
'key' => 'foo', // <-- Adjust to your needs!
'value' => 'bar' // <-- Adjust to your needs!
]
]
]
);
そして次のようにして投稿IDを収集します。
$post_ids = array_unique( wp_list_pluck( $comments, 'comment_post_ID' ) );
number
属性を使用して、照会されるコメントの数を制限することを検討したくなるかもしれません。
それならと一緒に使用します。
$query = new WP_Query( [ 'post__in' => $post_ids, ... ] );
空でない$post_ids
配列の場合。