Accessible Captcha
This extension changes the captchas from graphic words to user-definable questions and answers. The settings allow you to create up to 8 simple questions and answers that will be randomly chosen in place of the captcha. These captchas are completely accessible as long as you remember to make the questions straightforward and without cultural context (unless you need to restrict usage to a specific group or type of site visitor).
Checked for EE: 1.6.0 Download: ext.accessible_captcha.php (Zipped)
Installation Instructions
- Unzip the archive
- Copy ext.accessible_captcha.php into your /system/extensions folder
- Copy lang.accessible_captcha.php into your /system/language/english folder
Werner Gusset has kindly provided a German language file for this extension. You can download it from his site.
N.B. You will probably want to edit the lang.core.php file to change the error messages associated with either no captcha submitted or an incorrect one. The keys are ‘captcha_required’ and ‘captcha_incorrect’ on about lines 98 and 101 respectively.
Usage
Go to Utilities/Extensions and make sure that they are enabled then enable the Accessible Captcha extension. Click on Settings and add up to 8 question and answer pairs. It’s best to make sure that the answer is a single word but you can customise them depending upon your website audience. So, for example you could have:
Question: What is missing: North, South, East?
Answer: WestQuestion: 2+2 is equal to?
Answer: 4Question: An … a day keeps the doctor away. What word is missing?
Answer: appleUse the captcha code as per the Expression Engine documentation but modify the explanatory text to describe the requirement to answer a question rather than type the text in an image.
The captcha will then be replaced by one of these questions. The answer is case insensitive so for question 1 ‘West’ and ‘west’ will validate.
There are two additional settings:
- Answer hinting, that places text showing the number of characters required to complete the answer after the question. The hint will be wrapped in a span with the class ‘captcha-hints’ like so:
What is missing: North, South, East? <span class="captcha-hints">4 character(s) required</span> - Wrap hints in ( and ), places brackets around the hints like so:
What is missing: North, South, East? <span class="captcha-hints">(4 character(s) required)</span>Note that no other HTML tags are output so you can use whatever you wish to wrap and style the captcha question. The input is cleaned and processed by the existing form code.
- Answer hinting, that places text showing the number of characters required to complete the answer after the question. The hint will be wrapped in a span with the class ‘captcha-hints’ like so:

