Standing on the Shoulder of Linus

Home / 2015 / 1月 / 11 / 問い合わせフォーム改善: 選択肢により条件分岐し、項目の表示非表示を変更する

問い合わせフォーム改善: 選択肢により条件分岐し、項目の表示非表示を変更する

問い合わせフォーム等で、選択肢の選択に応じて、他の項目の表示非表示を切り替えたい、というケースがあると思います。

ありがちなケースとしては、

  • 「資料請求」を選択したときのみ、「住所」欄を表示する
  • 「既婚」を選択したときのみ、「子供の人数」欄を表示する
  • 「その他」を選択したときのみ、「自由記入」欄を表示する

等が考えられます。アンケートフォームなら、こういった分岐がたくさんあるかもしれません。

このような場合、JavaScript(jquery等)を書けば実現できます。ウェブ制作会社が運用を行うのであれば、JavaScriptを書く、という方法でも構わないでしょう。しかし、企業のウェブ担当者に「JavaScriptを書け」というのはハードルが高いかもしれません。

なので、「JavaScriptを書かずにカスタマイズできる」ように、noviusos_formの改善を提案しました。

フォーム作成画面で条件指定

フォーム作成画面で、条件を指定できるようにします。

form_edit

条件指定を有効にするかどうか
条件判定のフィールド名
条件判定の値

を設定します。上の画像の例だと、「radio_1」フィールドの値が「Other」のとき、このフィールドが表示されるようになります。

実際の表示

実際にフォームを表示した画面です。

form_nochoice

Otherを選択したときの画面です。

form_otherchoice

CMS同梱フォームを改善する

フォーム等で、選択肢の選択に応じて、次の項目の表示非表示を切り替える、という機能は便利だと思います。CMS本体で既に対応していることもあるかもしれません。では、もし対応していなかった場合はどうでしょうか。

一つの方法としては、自作のプラグイン/アドオンを作成して公開する、というやり方があります。WordPressだと、条件分岐機能付きフォームプラグインがいくつか配布されています。これらのプラグインを利用する場合、プラグイン開発者がメンテナンスしている間は良いですが、何かの都合でメンテナンスできなくなった場合に困るかもしれません。WordPressの場合は、各自が好き勝手にプラグインを作る、プラグイン作者がやめたら別の人がメンテナンスする、といった形でプラグインのメンテナンスが継続されています。この運用方式は、WordPressのようにコミュニティの層が厚い場合は上手くいきそうです。しかし、人的リソースが潤沢ではないプロダクトでは、この方式はリスクが高そうです。

他の方法としては、CMS標準同梱のプログラムを改善する、というやり方があります。Novius OSにはnoviusos_formというフォームプログラムが同梱されています。このプログラムを改良していく場合、自分一人で作るのではなく、相談したり議論したりして進めていくことになるでしょう。自分の好きなようにプラグインを作りたい人には向いていない方法だと思われます。しかし、特定の個人に依存しないで開発が行われるほうが、開発の継続性の面では安心できるでしょう。

ホームページ作成ソフトconcrete5では、マイ見積が条件分岐フォーム対応しています。

共有:

  • 共有
  • Pocket

いいね:

いいね 読み込み中...

関連

Posted in cms | Tagged jquery, フォーム, 分岐
← ワードプレスブログを更新する前に必ずすべき3つの作業 書評: Matt Mullenweg & WordPressの歴史を知る本 →

アーカイブ

RSS BMI22エンジニアの読書記録

  • 一歩先にいくWordPressのカスタマイズがわかる本
  • 「超常現象」を本気で科学する
  • XY(徳永圭)
  • バルミューダ 奇跡のデザイン経営
  • 誰も知らない栄養士の生き方

人気の投稿とページ

  • キンドル本を印刷する(PDFに変換する)方法
  • 名古屋駅から国際センターまでの道のり(徒歩)
  • AGPL ライセンス(GPLとは似ているが違いもある)
  • WordPress見積プラグインで見積書PDF発行
  • JP-Secure SiteGuard WP Pluginは不正ログイン防止に役立つか

プロフィール

水野史土:月70万PVホームページ制作会社のレスキューワーク株式会社で、PHPソフトウェアのサポートを行っている。concrete5コミュニティリーダー、Novius OSコアコード貢献者でもある。詳しくは管理者詳細参照。
大好評WordPress書籍「WordPressユーザーのためのPHP入門 はじめから、ていねいに。」サポートページ

Copyright © 2015 Standing on the Shoulder of Linus.

Powered by WordPress and Plain WP.