対策前
WordPressを利用して投稿ページを作成した時のコメント欄は良い機能なのですが、英語の意味不明で迷惑なスパム投稿が毎日数十件送られてきます。
個人ブログですので、海外からメッセージを受け付ける必要がなく、日本語のみを受け付ける前提ですので、送られないように対策しました。
対策方法
プラグイン『 Throws SPAM Away 』をインストールするだけ
Throws SPAM Away
海外からのコメントスパムに対抗(?)する手段として開発したプラグインですが
現在下記のフィルタでスパム判定しています。
・日本語判定(日本語を含むかどうか)
コメント欄に日本語文字列が含まれていないと投稿出来ない・・・
といってもエラーにするのではなく「無視」して何事もなかったようにもとの記事に戻ります。
[設定にてON/OFF出来ます。]
ダブルバイトをカウントするのではなく正規表現により日本語を検出しているため、ダブルバイトの他言語も侵入してきません。
[設定にてON/OFF出来ます。]
記事のタイトルを利用して「日本語を含むこと」の条件を回避するふとどきものを排除するため
「タイトルの文字列はカウントしない」機能を作りました。
・NGキーワード判定
NGキーワードを複数設定することが出来ます。(カンマ区切りにて設定)
日本語の文章であっても設定された「NGキーワード」を含む投稿の場合は、同様に無視します。
もちろん他の言語のキーワードでもOKです。
日本語が一切入っていないコメントでも「NGキーワード」だけ設定したい場合を想定し
日本語が入っていないと許可しない設定を「オン・オフ」出来るようになっています。
・リンク含有数判定
リンクと思わしき’http’を含んだ文字列が許容数(初期設定は3つ)を超えて包含される場合にエラーとします。
・ダミー項目による判定(スパムロボット対策)
空のダミーフィールドを生成しJavaScriptでの制御を行うことでスパム判定します。(停止も可能です)
※スパムプログラムによる投稿に有効です。実際に入力しようとしてもその項目は見えないようになっています。
[設定にてON/OFF出来ます。]
・IPアドレスによる判定
指定IPアドレスからの投稿をスパムとして処理します。
以前スパムとしてチェックした投稿のIPアドレス及び、任意のIPアドレスでの制御も出来るようになっています。
Throws SPAM Away の実装
- WordPressの管理画面から、プラグイン⇒新規プラグインを追加を選択します。
- プラグインの検索で「Throws SPAM Away」⇒今すぐインストール⇒「有効化」
- WordPressの管理画面から、Throws SPAM Away⇒Throws SPAM Away設定
- 好みの設定にして変更を保存で実装完了
対策後
以上のプラグイン実装で迷惑コメントは無くなり、「モデレートしてください」のメールが楽しみになりました。
コメント