サポート » 使い方全般 » カスタムフイールド値(日付)によってmeta_keyを変えて表示したい

  • 解決済 tamaki75

    (@tamaki75)


    お世話になります。

    現在、イベント情報の掲載ページを作っています。
    カスタムフィールド(Advanced Custom Fields)にてイベント開始日、イベント終了日を設定し、以下のように、イベント開始日を並び順として、開催中と開催前イベントを表示させています。

    <?php
    $current_date = date_i18n( 'Y/m/d' );						 
    $query = new WP_Query(array(
      'post_type' => 'event', 
    	'posts_per_page' => 10,
    	'orderby' => 'meta_value',
    	'meta_key' => 'event_start',//イベント開始日
    	'order' =>'ASC',
    	'paged' => get_query_var('paged') ,
    	array(
    	'key' => 'event_end',//イベント終了日
    	'value' => $current_date,
    	'compare' => '>=',
    	'type' => 'DATE'
    ),  
    )
    );
    ?>
    <?php if($query->have_posts()): while($query->have_posts()) : $query->the_post(); ?>
    ループ内容
    <?php endwhile; endif; ?>

    ・イベントが開催中だったら並びを終了日に、
    ・(それ以外の)開催前だったら並びを開始日に
    とすることは可能でしょうか?
    meta_keyを条件分岐で複数もたせる方法が見つからず、行き詰っておりました。

    現在の並びですと、1/1~12/31までの長い期間のイベントが常に一番上に表示されてしまうため、これを回避させる方法がないものかと…。

    何かヒント等教えていただけますと幸いです。

2件の返信を表示中 - 1 - 2件目 (全2件中)
2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「カスタムフイールド値(日付)によってmeta_keyを変えて表示したい」には新たに返信することはできません。