eritona / Hon-ee-Pot-Captcha

ExpressionEngine 2.0 Hon-ee Pot Captcha to work with the Freeform module and comment form

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Hon-ee Pot Captcha

I wanted to try to use the honey pot captcha technique to combat spam on my site. This technique includes a field on each form, hides it off the page with CSS and then validates on the back end to make sure it’s not filled in.

This addon validates Freeform, Safecracker, EE Member Registration, EE Member login, Zoo Visitor Registration, ProForm, Solspace User Registration, and EE comment forms.

Requirements & Installation

Hon-ee Pot Captcha is built to run on EE 2.0. To install:

  • Copy honeepot into your /system/expressionengine/third_party/ directory.
  • Go to Add-ons → Extensions and “Enable extension.”
  • You can customize the field name for the honey pot field and the message a user receives if the field is filled in by going to the extension settings.
<li class="screen-reader">
  <label for="honeepot">Don't put anything here</label>
  <input type="text" name="honeepot" id="honeepot" />
</li>

In my CSS, I have a class to move things off of the page:

.screen-reader {
  display: block !important;
  left: -9999px !important;
  position: absolute !important;
}

Freeform Forms

In your form, add the honey pot field. Make sure the name of the form field matches the name in the Hon-ee Pot Captcha settings.

Comment forms

Follow the same steps as the Freeform forms, except you do not have to create the field in Freeform.

Safecracker, Zoo Visitor Registration, Solspace User Registration, & ProForm Forms

Doesn’t show error when using inline validation, but still protects the entry from being submitted.

Config overrides

If you want to override the extension settings, you can with the following config overrides

$config['honeepot_field'] = 'honeepot';
$config['honeepot_error'] = 'Sorry, but we think you might be a robot.';

About

ExpressionEngine 2.0 Hon-ee Pot Captcha to work with the Freeform module and comment form