Contact form 7で以下のようなメッセージが出て、送信できなくなりました。
入力内容に問題があります。確認して再度お試しください。
One or more fields have an error. Please check and try again.
すべての必須項目を入力しているのに、なぜか送信できないので本来なら小一時間悩むところでしたが、以前同じような現象に出会っていたので対処方法がすぐにわかりました。
Contact form 7はコメント<!– –>が効かない
結論から申し上げますと、コンタクトフォーム内にHTMLコメント(<!– –>)でコメントアウトしたフィールドがあると、そこが悪さすることがあります。
Contact form 7はHTMLコメント内のフォームタグを処理してしまうためです。
フォーム上は存在していないのですが、送信処理の時にはコメント内のフォームタグが見えているようなのです。
コメント内のフォームタグに必須項目があると、そこが送信前のチェックで引っかかってしまい送信できなくなります。
画面上に存在していないフォーム項目が必須だったら、ユーザーは入力できないのですから必ず引っかかります。
対策:コメントにした部分はキレイに削除する
<!– –>でコメントアウトした部分にフォームタグが含まれている場合は、丸ごと削除しましょう。
そうすることで、ほとんどの場合は問題が解決すると思います。
まとめ
Contact form 7のフォーム内コメントでトラブルになったのは2回目だったので、原因がすぐにわかり対処することができましたが、はじめての場合は結構ハマってしまうと思います。
コンタクトフォームのフォームタグを<!– –>でコメントアウトすると知らず知らずのうちにトラブルの温床となりますので、絶対にやめた方がよいです。
Contact form 7は利用者が多いのですが、サポートがアレなのでトラブって検索しても情報が出てこないと絶望的な気持ちになるプラグインの1つです。