WordPressの勉強がてら

WordPressの初心者が独学でホームページ作成したときの技術メモ

WordPressの勉強がてら

Contact Form 7の初期値をクエリストリングから取得する

      2015/01/20

お問い合わせフォームを作成するときよく使うプラグイン「Contact Form 7」ですが、フォームに初期値をクエリストリングから取得したいことがあって対応したのでメモ。

やりたいこと

・お問い合わせページを作る
・別ページからお問い合わせページへのリンクを張りたいがお問い合わせのタイトルとラジオボタンの初期値を指定する。

 

お問い合わせフォームを作成

下記のようにContact Form 7でフォームを作成

上記の「項目」(ラジオボタン)と「題名」(テキスト)の初期値を指定できるようにします。

functions.phpを編集

functions.phpに下記コードを追加します。

function my_form_tag_filter($tag){
    if ( ! is_array( $tag ) )
        return $tag;

    $name = $tag['name'];
    if(isset($_GET['subject'])){
        if($name == 'your-subject')
            $tag['values'] = (array) $_GET['subject'];
    }

    if(isset($_GET['radio'])){
        if($name == 'your-radio')
             $tag['options'] = (array) ("default:" . $_GET['radio']);
    }

    return $tag;
}
add_filter('wpcf7_form_tag', 'my_form_tag_filter', 11);

 

リンクを追加

<a href=”xxxx/contact/?subject=こんにちは&radio=2“>お問い合わせ</a>

subject:「題名」の初期値
radio:「項目」ラジオボタンの初期選択番号。”質問(1つ目の選択肢)”にチェックを入れたい場合はradio=1を指定する。

こんな感じにリンクにクエリストリングを追加すれば下記のように問い合わせフォームを開いたときに初期値が入ります。

これで完成。

他にもチェックボックスやセレクトボタンもあるみたいですが今回使わかなったのでまたいつか。

 

 - WordPress

  • このエントリーをはてなブックマークに追加

  関連記事

wordpress情報
ログオフせずに簡単にユーザーを切り替える

会員制のサイトや、クライアントの権限を「編集者」として引き渡しする場合など、動作 …

wordpress情報
Contact Form 7をレスポンシブ対応する

お問い合わせフォームを作るときに定番のプラグイン「Contact Form 7」 …

wordpress情報
「Events Manager」でオリジナルのプレースホルダーを追加する

便利なイベントカレンダープラグイン「Events Manager」ですが、フォー …

wordpress情報
ソースコードを投稿するプラグイン

ソースコードを投稿し綺麗に表示したい。でもCSSをつくるのは面倒。 でいろんな言 …

wordpress情報
「Events Manager」プラグイン を使ってイベントカレンダーを作成する

「WordPress イベントカレンダー」で検索するといろんなイベントカレンダー …

wordpress情報
特定のページのみSSLに対応させる

申し込みページに住所等の個人情報を入力する場合は、情報流出を防ぐためSSLを導入 …

wordpress情報
「Events Manager」の検索フォームにカスタム分類(カスタムタクソノミー)フィールドを追加する

イベントカレンダーのプラグイン「Events Manager」には絞り込み検索が …

wordpress情報
管理画面(ダッシュボード)のメニューの表示/非表示を手動で操作する方法

Webサイト作成後、クライアントに引き渡すとき、管理画面から不要なメニューは表示 …

wordpress情報
「Events Manager」の検索フォームにイベント属性フィールドを追加する

以前「Events Manager」の検索フォームにカスタム分類のフィールドを追 …

wordpress情報
「Events Manager」の絞り込み検索ページへリンク(条件込み)を張る方法

イベントカレンダーに欠かせないプラグイン「Events Manager」。今回は …