(1)functions.phpに以下のコードを追加します。
※ building_nameとroom_numberとうい値を取得したい場合
//コンタクトフォーム function my_form_tag_filter($tag){ if ( ! is_array( $tag ) ) return $tag; if(isset($_POST['building_name'])){ $name = $tag['name']; if($name == 'building_name') $tag['values'] = (array) $_POST['building_name']; } if(isset($_POST['room_number'])){ $name = $tag['name']; if($name == 'room_number') $tag['values'] = (array) $_POST['room_number']; } return $tag; } add_filter('wpcf7_form_tag', 'my_form_tag_filter');
(2)お問い合わせボタンを設置するテンプレートに以下の記述をします。
<?php $building_name = post_custom("building_name"); $room_number = post_custom("room_number"); ?> <form action="<?php echo home_url(); ?>/contact/" method="post"> <input type="hidden" name="building_name" value="<?php echo $building_name; ?>"> <input type="hidden" name="room_number" value="<?php echo $room_number; ?>"> <input type="submit" value="お問い合わせはこちら" class="btn btn-primary btn-lg" /> </form>
(3)お問い合わせフォームに表示するために、管理画面のコンタクトフォーム編集画面に以下を追加します。
[text building_name class:readonly readonly] [text room_number class:readonly readonly]
参考:[WP]Contact Form 7に投稿のタイトルとカスタムフィールドの値を渡す方法
【WordPress】Contact Form 7 に値を渡すメモ