WordPress Contact Form 7 禁止ワードと日本語判定によるスパム判定処理

概要説明

Contact Form 7 のスパム対策を行いたい時のカスタマイズ。日本語判定プラス任意のNGワードを設定できることにより後々調整を行うことができるような処理になっています。

コード – your-message フィールドを対象とする(本文)

functions.php
/*----------------------------------------------------
 Contact Form 7 禁止ワードと日本語判定によるスパム判定処理
----------------------------------------------------*/
if ( !function_exists( 'wpcf7_validate_spam_msg' ) ){
    function wpcf7_validate_spam_msg( $result ) {

        $field   = 'your-message';
        $ngwords = array('禁止ワード', 'NGワード');

        if (!empty($_POST[$field])) {

            // NGワードを含む場合は場合は弾く
            foreach ( $ngwords as $key => $word ) {
                if (false !== strstr($_POST[$field], $word)) {
                    $result['valid']  = false;
                    $result['reason'] = array('your-message' => '送信できません');
                    break;
                }
            }

            // ひらがなが本文に含まれているかを判定
            if (!preg_match('/[ぁ-ん]+/u', $_POST[$field])) {
                $result['valid']  = false;
                $result['reason'] = array('your-message' => '送信できません');
            }
        }
        return $result;
    }
    add_filter( 'wpcf7_validate_textarea', 'wpcf7_validate_spam_msg', 10 );
}
WordPress Contact Form 7 禁止ワードと日本語判定によるスパム判定処理

関連機能

  1. ダッシュボードに自由に使えるメモ用エリアを追加

  2. WordPress現在表示しているページのプログラムファイルを表示させるプラグイン Show Current Template

  3. ico形式のファイルをアップロードできるようにする

サイドバー

よく使うカスタマイズ

最近の記事

アニメの名言集

あまり強い言葉を使うなよ
弱く見えるぞ

BLEACH
by 藍染惣右介

Profile

PAGE TOP
Amazon プライム対象