WordPressで「メールフォーム」といえば、
プラグイン「Contact Form 7」を使って作成している場合がほとんどだと思います。
ただメールフォームを置くことで困るのは「スパムメール」。よく分からない英数字のメールがバラバラ来たりしますが、この防止策としては Contact Form 7では「クイズの設定」ができますね。
とても簡単にできるので、ここでクイズを設定していきましょう。
早速クイズを設定
ではいよいよクイズの作成です。
まずはメニューの「お問い合わせ」から、
使用している「コンタクトフォーム」を選択します。

- ①:「お問い合わせ」をクリック
- ②:使用している「コンタクトフォーム」をクリック
↓↓↓↓↓↓
コンタクトフォームの編集に入るので、
フォーム内のクイズを入れたい場所(最下段の「送信」の前など)一度クリックしてカーソルを持って行き、その後「クイズ」ボタンをクリックします。

- ① クイズを入れたい箇所で一度クリック(「送信」前など)
- ②「クイズ」をクリック
クイズの設定
「クイズ」ボタンをクリックすると
以下のクイズの設定画面が表示されます。

①の「項目タイプ」とか「項目名」は気にしなくてOKです。
②に実際のクイズを入れていきます。ということで、クイズの書き方を見ておきましょう。
クイズの基本形
クイズと答えを縦棒の記号「l」で区切り、
質問l答え
という形で記載します。
簡単な計算「1+1=2」をクイズにすると、
1+1=|2
となりますね。
「1+1=」がクイズになり、
その後に記号の「|」を書いて、答えの「2」を書く、という形。
クイズを考える時のポイント
なぜクイズを設定するかといえば、
それはスパムメールの対策をしたいから。
スパムメールは日本語ではなく英語の場合が基本と思いますが、つまり英語圏にいる人がブログのメールフォームを使ってスパムメールを送ってくる、ということが考えられます。
ということから、英語圏の人からみて簡単に答えがわかるクイズ(例:1+1=? みたいなクイズ)より、日本人しかわからないようなクイズのほうが良さそう、というところで考えていくのが良いでと思います。
例)さしすせその次は?|た
複数の答えがある場合
1つのクイズに対して複数の答えがある場合、
同じように「|」を使って答えをつなげていけばOK。
- 例)りんごは何色?|赤|赤色|あか|あかいろ
- 例)英語で '見る' を表す動詞といえば?|see|look|watch
- 例)年越しで食べるものは?|そば|蕎麦|うどん|ラーメン
クイズは複数設定
クイズは複数設定できるので、3つほど設定しておくのが良いと思います。
(複数設定すると、お問い合わせページにアクセスするたびにランダムにクイズが表示される)
上で見た3つの例を設定すると以下のようになりますね。

- ①:クイズを入力する
- ②:クイズを入力したら「タグを挿入」をクリック
↓↓↓↓↓↓

カーソルのある位置にクイズが挿入されました。(①)
ただ、ここで上図のように、
クイズの前後で改行で1行分ほどスペースを入れておくのが良いです。
(そうしないと、実際のメールフォームで上下くっついた感じになりますので)
最後は右上②「保存」をクリックして完了です。
メールフォームを確認
表示を確認
実際に問い合わせフォームを表示してみると、以下のように表示されます。

メッセージ本文と「送信」ボタンの間にクイズが表示されましたね!
ここではクイズを複数指定してますので、
このメールフォームを表示する度にそれらがランダムに表示されることになります。
- 自動返信の設定については以下の記事参照
「Contact form 7」で自動返信メール!差出人の設定などはこうする! - 確認画面を挟む場合には、以下の記事参照
ContactForm7に確認画面を表示する!デザインカスタマイズでより快適に
今回のまとめ
スパム対策はこの他にも画像認証などがありますが、元々「contact form 7」に備わっているクイズの設定がとっても簡単です。
スパムに困っている、事前にスパム対策をしておきたい、という場合には、ぜひ一度設定してみてください。
余計なメールに時間をとられるのは何とももったいないですし、こうした「一度設定しておけばよいもの」はしっかり設定しつつ、効率よく進んでいきましょう!
コメント