プラグイン

投稿日:2024年4月3日 更新日:

項目選択肢の値をフォームに渡す/contactform7

項目選択肢の値をフォームに渡す/コンタクトフォーム7

やりたいこと

ページ内に設置した選択肢の値を問い合わせフォームに渡したい

ページの表記

<form action="https://ikkatsu-factoring.com/contact" method="post" name="form1">
  <select name="select-name" class="selectbox">
    <option value="--">選択肢</option>
    <option value="あああ">あああ</option>
    <option value="いいい">いいい</option>
    <option value="ううう">ううう</option>
  </select>
  <a href="javascript:form1.submit()">
</form>

functions.php

以下を追記
値が複数ある場合は4~8行目までを繰り返す

function my_form_tag_filter($tag)
{
if (!is_array($tag)) return $tag;
if (isset($_GET['select-name'])) {
if ($tag['name'] == 'select-name') {
$tag['values'] = (array) $_GET['select-name'];
}
}
return $tag;
}
add_filter('wpcf7_form_tag', 'my_form_tag_filter', 11);

コンタクトフォーム

default:postを追記
[select* select-name default:post]

参考にしたサイト
https://qiita.com/mitsuhiro_K/items/5cc9a2766e5953fa0bae

元のページはpostで渡しているけど、functions.phpのGETをPOSTに変えると動かない。
POSTで取得する方法もあるが、今回はこれで動いたので良しとする

メモ

知り合い曰くa href にjavascript~~の記述は違和感ありらしい
書き直せるなら、
buttonタグに変更して、スタイルも合わせて変更するほうが良い

input type="submit"でもいけるが、装飾が難しい
*button inputは、タグの機能的に送信するものだから

<a href="javascript:form1.submit()">fugafuga</a>

- プラグイン
-

関連記事

【プラグイン】contactform7のカスタマイズ

contact form7には特別なメールタグがあり、使用できる 特別なメールタグ Contact form 7 のフォームに自動的に記事タイトルを入れる方法 http://www.doya-doya ...

Table of Contents Plusの見出し、記事内の内部リンクを拾ってしまう

WordPressでブログを書く時に、目次をつけたいと「Table of Contents Plus」を使うことはないですか? 「Table of Contents Plus」は見出しタグを設定すると ...

Contactform7の添付ファイルに関する覚書き

目次1 Contactform7 で.heic形式の画像を使用できるようにする1.1 functions.phpに追記1.2 Contactform7 でファイル設定2 その他添付ファイルに関するメモ ...

wordpressプラグイン contactfotm7 不要なタグを除去する

目次1 functions.phpに以下を記載2 wordpress の contactform7テキストエリア内に改行を入れる2.1 対策 functions.phpに以下を記載 // Contac ...