実現したいこと
ACFのリピーターフィールドで入力した
該当する特定のイベント情報を遷移後のフォームに表示したい。
前提
- 遷移元は 固定ページ(page-event.php)
- フォームは MW WP Form使用
- ACF PRO版
遷移元ページにACFのリピーターフィールドで下記のようにイベント情報を入力しています。
php
1<h3>イベント一覧</h3> 2<div class="event_list"> 3 <?php if( have_rows('event_repeater') ): $count=0; ?> 4 <?php while ( have_rows('event_repeater') ) : the_row(); ?> 5 <dl> 6 <dt> 7 <?php 8 $event_date = get_sub_field('event_date'); 9 $week = array("日", "月", "火", "水", "木", "金", "土"); 10 ?> 11 <?php echo $event_date; ?>(<?php echo $week[(int)date_format($date,'w')] ?>) 12 </dt> 13 <dd> 14 <p> 15 <?php the_sub_field('event_time'); ?> 16 </p> 17 <p> 18 <?php the_sub_field('event_spot'); ?> 19 </p> 20 <p class="reserve_add"> 21 <?php the_sub_field('event_address'); ?> 22 </p> 23 </dd> 24 <dd><a href="event/?post_id=<?php echo $post->ID; ?>&number=<?php echo $count; ?>">申し込む</a></dd> 25 </dl> 26 <?php $count++; ?> 27 <?php endwhile; endif; ?> 28</div> 29
MWフォーム側、値受け取り箇所
<ul class="your-event-info"> <li>[mwform_text name="your_date" class="your_date" value=""]</li> <li>[mwform_text name="your_time" class="your_time" value=""]</li> <li>[mwform_text name="your_spot" class="your_spot" value=""]</li> <li>[mwform_text name="your_add" class="your_add" value=""]</li> </ul>
試したこと
MW WP Form側で「URL引数を有効にする」を有効にし、{event_repeater_0_event_date}
などと特定のリピーターフィールドの連番指定をすれば値が取得できたのですが、特定のものしか出力できません。
複数のイベント情報から、該当するイベント情報のみをフォーム側で出力する
ということを実現できません。
個々のリピーターフィールドを識別するために遷移元にパラメータとして
number=<?php echo $count; ?>
するなどしてみたり
mwform_choices_mw-wp-form-xxx
mwform_value_mw-wp-form-xxx
などのフィルターフックなどで可能なのだろうかと思い試行錯誤してみたのですが、
具体的にどのような記述をしたらいいのかわからず、、
ご教示いただければ幸いです。
あなたの回答
tips
プレビュー