Pocket

WordPressお問い合わせフォーム「Contact Form 7」に CAPTCHA を追加

  • add this entry to hatena bookmark

WordPressお問い合わせフォームとして、Contact Form 7 を使っていますが、CAPTCHA対応として、Really Simple CAPTCHA を導入しました。

PHP環境の構築

Really Simple CAPTCHA を利用する際には、画像を扱う為に、PHP環境でGDとFreeTypeのライブラリが必要になります。私のPHP環境(ソースからインストール)では以下のようにPHPをインストールし直しました。(PHPで新しいバージョンが出ていたので、ついでにPHPのバージョンアップも行いました。)

freetype で DIR指定している個所は環境によってパスが異なると思います。ご自身の環境でご確認ください。

# ./configure (他のオプションは省略) --with-gd --with-freetype-dir=/usr/include/freetype2/freetype
# make
# make test
# make install

これで、Really Simple CAPTCHA を実行できるPHP環境になりました。

 

プラグインのインストール

WordPressのプラグインをインストールします。

まず、Contact Form 7 で新しいバージョンが出ていましたので、それをインストールしました。

# pwd
/usr/local/src
# wget http://downloads.wordpress.org/plugin/contact-form-7.3.5.1.zip
# unzip contact-form-7.3.5.1.zip
# mv contact-form-7 /usr/local/apache2/htdocs/wp-content/plugins/

次に Really Simple CAPTCHA をインストールしました。

# wget http://downloads.wordpress.org/plugin/really-simple-captcha.1.6.zip
# unzip really-simple-captcha.1.6.zip
# mv really-simple-captcha /usr/local/apache2/htdocs/wp-content/plugins/

プラグインを有効にします。

次は、Contact Form 7 のフォーム設定で、Really Simple CAPTCHA を使う設定を行います。

 

Contact Form 7 での設定

Really Simple CAPTCHA を使うには、Contact Form 7 の設定画面で、フォームタグ「captchac」と「captchar」を設定します。

もっともシンプルな設定は、以下を追加すれば良いようです。

[captchac captcha-1] [captchar captcha-1]

画面上で見ると以下のような感じです。赤文字で囲った部分です。

ContactForm7_config

これを保存して、固定ページに設定した Contact Form 7 のフォームを確認すると、以下のように CAPTCHA が表示されました。

ReallySimpleCAPTCHA_Form

表示されている画像では「WCGY」と読めますが、わざと異なるコード文字列を入力して「送信」ボタンをクリックすると、以下のようになります。

ReallySimpleCAPTCHA_Check

しっかりチェックされています。次に表示されているコード文字列を入力して「送信」ボタンをクリックすると、ちゃんと送信できました。

Pocket

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


*

チェックサイト RSS Feed読者登録はいかがでしょうか?RSS配信中です。