前提・実現したいこと
WP4.9.8でプラグインACFのリピーターフィールドを使って記事を作成しています。
一つの記事にはリピーターフィールドで日付(デイトピッカー)が複数つけられてます。
例
記事A
リピーターフィールド[dates]
--2018/10/15(サブフィールド[date])
--2018/9/29(サブフィールド[date])
記事B
リピーターフィールド[dates]
--2018/9/30(サブフィールド[date])
--2018/11/30(サブフィールド[date])
このような記事を
2018/9/29 記事Aタイトル
2018/9/30 記事Bタイトル
2018/10/15 記事Aタイトル
2018/11/30 記事Bタイトル
サブフィールド[date]によって並び替えて出力したいと考えております。
該当のソースコード
<?php $event_query = new WP_Query(); $event_paged = get_query_var('paged') ? get_query_var('paged') : 1; add_filter('posts_where', function ($where) { // Repeater Field内をmeta_keyで検索するため、LIKEで検索 $where = str_replace("meta_key = 'dates_%", "meta_key LIKE 'dates_%", $where); return $where; }); $today = date('Ymd'); $event_param = [ 'post_type' => 'fair', 'post_status' => 'publish', 'posts_per_page' => -1, 'paged' => $event_paged, 'orderby' => 'meta_value', 'meta_key' => 'dates_%_date', // Repeater Fieldの開催日が古い順でソート 'order' => 'ASC', 'meta_query' => [ 'relation' => 'AND', [ 'key' => 'dates_%_date', 'compare' => '>=', 'value' => $today, //開催日が今日以降のみ表示 ] ] ]; $event_query->query($event_param); while ($event_query->have_posts()) { $event_query->the_post(); the_title(); } ?>
試したこと
上記コードで試し見たのですが、出力されずに困っております。
皆様のお力添えいただければ幸いです。
あなたの回答
tips
プレビュー