WordPressサイトにGoogle reCAPTCHA導入してみました

2020年1月11日ブログ運営Luxeritas,WordPress

運営しているWordPressサイトGoogle reCAPTCHAを導入しました。これによりメールフォームからのスパムは見事0になりましたが、通常ページのスピードが悪化してしてしまいました。Google reCAPTCHAはメールフォームのみに効かせたほうが良いようです。

Google reCAPTCHA イメージ


Google reCAPTCHAとは

Google reCAPTCHAとは、スパム対策に最も効果的なツールで、コメント欄のあるウェブサイトの下部などにこんなマークがあるのを見たことありませんか。

Google reCAPTCHAとは

これを導入することでスパムを0に減らすことが出来るのです。

ブログのコメント欄はWordPress標準のプラグイン「Akismet」で防げていたのですが、メールフォームを今までのFC2メールフォームから、WordPressのContact Form 7というメールフォームのプラグインに変えた途端にスパムメールが多発(何故かロシア語のメールが多い)。それに「Akismet」は無料で使えるプラグインですが、アフィリエイトなどで収益化しているサイトでは有料になるとのこと。

 

どうしたものかと悩んでいたら、この「Google reCAPTCHA」というものを知り、しかも私の愛用しているWordPressのテーマ Luxeritasにも設定項目があるじゃないですか>知らんかった。

WordPressのテーマLuxeritasにもGoogle reCAPTCHAの設定項目がある

Luxeritasは無料なのに何でも出来てすごすぎる。

reCAPTCHAを導入するには

reCAPTCHAを導入するにはまず reCAPTCHA_ Easy on Humans, Hard on Bots へアクセスし、ページ右上の[Admin Console]をクリックし、設定したいサイトの情報を入力して、Site keyとSecret keyをゲットします。

 

Luxeritasに戻り、Luxeritas▶カスタマイズ▶コメント内の画像認証と、Contact Form 7の、お問い合わせ▶インテグレーション▶reCAPTCHAの2箇所にSite key、Secret keyを入力すればスパム対策は完了です!!

LuxeritasのGoogle reCAPTCHA設定項目にSite key、Secret keyを入力すればスパム対策は完了!!

インテグレーションのセットアップ完了でGoogle reCAPTCHAが有効になりました

さらにLuxeritasの最新ver.3.7.6には邪魔なreCAPTCHAのマークを消す機能も追加されています。

*2020/01/11現在

Luxeritasの最新ver.3.7.6には邪魔なreCAPTCHAのマークを消す機能も追加されています。

*reCAPTCHAのマークを消すのは規約違反ですが、フォーム内に以下のような一文を入れれば消しても良いとのことで、ここで設定すると自動で文字が入ります。

”This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.”

reCAPTCHAのマークを消すのは規約違反ですが、フォーム内に以下のような一文を入れれば消しても良いとのこと。

詳しくは:
機能拡張いろいろ Luxeritas 3.7.6 _ Thought is free

Luxeritas以外の方はInvisible reCAPTCHAというWordPress用のプラグインもあるようです。

見事にスパム0になりました

見事にスパム0です、素晴らしいですね。

reCAPTCHAを導入してから見事にスパム0!素晴らしいです

Google reCAPTCHAのおかげでセキュリティー目的で入れているSiteGuard WP Pluginのコメント欄の画像認証を外すことが出来ました。

SiteGuard WP Plugin管理画面

と、思ったら。。。。

Google reCAPTCHAにより PageSpeed Insightsの点数が悪化

Google reCAPTCHAは、激重らしく、PageSpeed Insights の点数が悪化してしまいましたので、現在はメールフォームのみに入れています!

※コメント欄は今まで通り「SiteGuard WP Plugin」でガード。

Google reCAPTCHAを入れると PageSpeed Insights の点数が悪化します

functions.phpにコードを追記すれば完璧!!

ただし、コメント欄で reCAPTCHAを無効にしても、メールフォームで reCAPTCHA有効にしていると、若干の速度低下が起こります。その場合「functions.php」に以下のコードを追記すればOKです。

// reCAPTCHAを問い合わせページのみで有効にする
add_action('wp_enqueue_scripts', function () {
if (!is_page('contact')) {
if (wp_script_is('wpcf7-recaptcha', 'enqueued')) {
wp_dequeue_script('wpcf7-recaptcha');
}
if (wp_script_is('google-recaptcha', 'enqueued')) {
wp_dequeue_script('google-recaptcha');
}
}
}, 100);

※このコードはChatGPTに書いてもらったものですが、正常に動作しています。functions.php を書き間違えると、WordPress そのものが動作しなくなるためご注意ください。

参考:
解決済み!functions.phpをいじったらサイトの画面が真っ白になりアクセス不能に

 

作業後、PageSpeed Insightsで速度テストを行ったところ、投稿ページ及び固定ページの高速化が確認できました!!

functions.php記述前
作業前
functions.php記述後
作業後

メールフォーム、コメント欄共に、Google reCAPTCHAとSiteGuard WP Pluginでガッチリガードされ一安心ですε-(´∀`*)ホッ