WordPressでContactform7を使用したフォームのセレクトボックスに値を渡す方法をメモ。

例えば
・用件1
・用件2
・用件3
といったセレクトボックスがあり、
ページ1から問い合わせフォームに飛んだ際にデフォルト値として
セレクトボックスの値を用件1に指定する場合、

functions.phpに

function my_form_tag_filter($tag){
        if(isset($_GET['cfselect'])){
            $cfselect = $_GET['cfselect'][0];
            $name = $tag['name'];
            if($name == 'youken'){
                $tag['options'][1] = 'default:'.$cfselect;
            }
	}
	return $tag;
}
add_filter('wpcf7_form_tag', 'my_form_tag_filter', 11);

のようにしてあげればOK

※『cfselect』と『youken』という値はそれぞれ指定してください。

『cfselect』⇒GETで値を渡す時の名前($_GET[‘cfselect’])
『youken』⇒contactform7でセレクトボックスに指定した名前

あとは
http://sample.com/inquiry/?cfselect=1
のように
ページ1から/inquiry/というフォームへのリンクに
?指定した名前=セレクトボックスの順番(【用件1,用件2,用件3】なら【1,2,3】)

としてあげればOK