I have a custom plugin that loads a form from XML, renders it into an article with Form::renderFieldset() and processes the POST. One of my forms has a captcha type field. The only CAPTCHA plugin that ships with Joomla 6 is invisible reCAPTCHA, and I'd rather keep it and avoid getting another (it's used elsewhere).
The field XML goes:
<field type="captcha" name="Humanity" validate="captcha" label="Are you human?"/>
CAPTCHA field is rendered in the way that respects it invisible nature.
CAPTCHA field validates upon form submission.
When rendering the form, the label on the captcha field is being drawn - even there is no captcha controls to fill out, on account of being invisible. If I set label to a blank string, the asterisk that denotes a required field is rendered.
Upon form submission and validation, I get the message "Empty solution not allowed" - which is something of a generic reCAPTCHA error.
Joomla 6.0.1
PHP 8.4.5
The reCAPTCHA badge can be seen in the lower right corner though - the API key and secret are right.
This worked in Joomla 5.4, broke in 6.0.1.
The bogus CAPTCHA field label is quite misleading to users.
| Labels |
Added:
No Code Attached Yet
|
||
| Status | New | ⇒ | Closed |
| Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2025-12-03 01:42:31 |
| Closed_By | ⇒ | sevaa |
No repro on clean install. The bogus render was a template artifact, still investigating the empty solution error.