はじめに
株式会社TOKOSのタクヤです。
今回はWordPressのプラグインContactForm7で作成したお問い合わせフォームのスパム対策の方法をご紹介します。
今回ご紹介するのは一般的に普及しているGoogle reCAPTCHAを用いる方法ではなくCloudflare Turnstileというツールを使用する方法です。Cloudflare TurnstileはGoogle reCAPTCHAのデメリットを補ってくれるサービスになりますのでぜひおすすめです。
対象読者
- お問い合わせフォームの迷惑メールに困っている方
- Google reCAPTCHAからの移行を考えている方
Google reCAPTCHAについて
Google reCAPTCHAは、Googleが提供しているウェブサイトをスパムや悪意のある攻撃から守るためのセキュリティ対策ツールでお問い合わせフォームとやログインフォームなどで使用されます。 もちろんWordPressでも問題なく使用でき、プラグインのContact Form 7で作成したお問い合わせフォームにも使用できます。
ただ2024年4月から無料で利用できる月間リクエスト数が大幅に縮小してしまい、毎月1万リクエストまでとなってしまいました。そのためある程度の大きい規模のサイトだとリクエスト数が足りない恐れがあります。
Cloudflare Turnstileについて
そこで今回ご紹介するのがCloudflareが提供しているCloudflare Turnstileというツールです。
Cloudflare TurnstileはGoogle reCAPTHAと基本的な機能は一緒ですが、Google reCAPTHAよりも読み込み速度が早くなんと言ってもリクエスト数が無制限です。設定もGoogle reCAPTCHAと同じくらい簡単なのでほとんどの場合でGoogle reCAPTCHAよりも使いやすいツールだと思います。
Cloudflare Turnstileの導入
それではCloudflare Turnstileの導入をしていきます。
Cloudflare Turnstileの登録
https://www.cloudflare.com/ja-jp/products/turnstile/
上記サイトからアカウントがあればログイン、なければアカウント登録をします。
サイトを追加
Cloudflare Turnstileの管理画面からサイトを追加します

Cloudflare Turnstileを導入したいサイト名とドメインを入力し保存します。

サイトキーとシークレットキーの取得
サイトを追加すると、サイトキーとシークレットキーが表示されるのでそれをコピーしておきます。これは後ほどWordPressのプラグインの設定で使用します。

WordPressのプラグインの導入と設定
Cloudflare Turnstileのサイト設定が完了したら、WordPressのプラグインの導入と設定していきます。
プラグインの導入
「Simple Cloudflare Turnstile」で検索しプラグインをインストールします。

Cloudflare TurnstileのAPIキーの入力
先ほどCloudflare Turnstileのサイトでコピーしたサイトキーとシークレットキーを入力します。

Cloudflare Turnstile を有効化したいフォームを選択する
Cloudflare Turnstile を有効化したいフォームを選択します。
今回はContact Form 7で作成したお問い合わせフォームで有効化したいのでContact Form 7 のところにチェックを入れます。

APIテスト
設定が完了すると接続テストのアナウンスが表示されるので応答テストをクリックします。
テストが完了するとWordPressのサイト内でCloudflare Turnstileが使えるようになります。

ContactForm7のフォームにショートコードを追加する
ContactForm7のフォーム編集から下記ショートコードを任意の場所に追加します。
[cf7-simple-turnstile]

これでお問い合わせフォームにCloudflare Turnstileが追加できました。

終わりに
今回はWordPressのプラグインContactForm7で作成したお問い合わせフォームにおけるスパム対策の方法をご紹介しました。
Cloudflare Turnstile というサービスを使用したスパム対策の方法で、リクエスト数が無制限なので便利です。是非使ってみてください。