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. 特定のページにだけ任意のcssファイルを読み込ませる

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

  3. WordPress 特定のページでプラグインの有効・無効の制御ができるプラグイン Plugin Load Filter

サイドバー

よく使うカスタマイズ

最近の記事

アニメの名言集

今ここで限界を超えろ
それしか道はねぇ

ブラッククローバー
by ヤミ・スケヒロ

Profile

PAGE TOP
Amazon プライム対象