始めまして、gurmu222と申します。
カスタムフィールドのACF(アドバンスカスタムフィールド)を使用し、
人名リストを作成いたしました。
URLのmeta_valueより日付で絞り込み、
その日付の人を全員表示させたいと考えております。
日付で絞り全員表示はできたのですが、
同じ内容の人を選択すると全員表示されてしまうので、
重複してしまいます。
その重複した人のみを削除したいと考えております。
meta_unique()を使用すると重複を削除できると調べて書いてみたのですが、
うまく動作しません、、
原因や表示のさせ方などお分かりの方がいましたらご教授頂けますと幸いです。
繰り返しカスタムフィールド( date_repeat )
日付 ( date ) 【デイピッカー Y年m月d日 】
時間( time ) 【テキスト G:i 】
人名 ( staff ) 【チェックボックス複数選択可 value => 30 label => 田中 】
<?php if(have_rows('date_repeat')): ?> <?php while(have_rows('date_repeat')): the_row(); $date = get_sub_field('date'); $staffs = get_sub_field('staff'); $time = get_sub_field('time'); $url = substr($_SERVER["REQUEST_URI"],-8,8); $serchdate = date('Y年m月d日', strtotime($url)); $uniquearray = array(); //配列の初期化 foreach( $staffs as $value ){ // 配列の作成 $uniquearray[] = $value; } ?> <?php if( $date == $serchdate ): ?> <?php $unique = array_unique($uniquearray,SORT_REGULAR);?> <?php foreach( $uniquearray as $value ){ echo '<a href="'; echo esc_url( home_url( '/' ) ); echo 'staff#prof'.$value['value'].'">'; echo $value['label']; echo '</a>'; } ?> <?php endif; ?> <?php endwhile; ?> <?php endif; ?>
【ACF入力1】 日付: 2018年9月1日 時間: 12:00 人名 : value=>1 label=>田中 value=>20 label=>佐々木 value=>30 label=>小林 【ACF入力2】 日付: 2018年9月1日 時間: 15:00 人名 : value=>1 label=>田中 value=>6 label=>高橋 value=>5 label=>小瀬 【出力結果】 田中 佐々木 小林 田中 髙橋 小瀬
出力結果の4つ目の重複する田中を削除したいと考えております。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/07 09:04