Friendly Captcha is a privacy-first anti-bot solution that protects WordPress website forms from spam and abuse.
Category Scores
Issues to Review
Prioritized issue groups from the latest Plugin Check scan
Security
104
7 issue groups
Maintainability
77
10 issue groups
I18n
70
5 issue groups
Repo Compliance
3
3 issue groups
ERRORSecurityOutput is not escapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<option value=\"{$code}\" {$selected}>{$name}</option>"'.62
- Category
- Security
- Occurrences
- 62
- Severity
- error
Sample message
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<option value=\"{$code}\" {$selected}>{$name}</option>"'.
ERRORI18nText Domain MismatchMismatched text domain. Expected 'friendly-captcha' but got "frcaptcha".59
- Category
- I18n
- Occurrences
- 59
- Severity
- error
Sample message
Mismatched text domain. Expected 'friendly-captcha' but got "frcaptcha".
ERRORMaintainabilityMissing direct file access protectionPHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;44
- Category
- Maintainability
- Occurrences
- 44
- Severity
- error
Sample message
PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;
WARNINGSecurityMissing nonce verificationProcessing form data without nonce verification.19
- Category
- Security
- Occurrences
- 19
- Severity
- warning
Sample message
Processing form data without nonce verification.
ERRORSecuritySetting is missing a sanitization callbackSanitization missing for register_setting().10
- Category
- Security
- Occurrences
- 10
- Severity
- error
Sample message
Sanitization missing for register_setting().
WARNINGMaintainabilityNon-prefixed global variableGlobal variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$awsm_response".9
- Category
- Maintainability
- Occurrences
- 9
- Severity
- warning
Sample message
Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$awsm_response".
ERRORMaintainabilityNon Enqueued ScriptScripts must be registered/enqueued via wp_enqueue_script()5
- Category
- Maintainability
- Occurrences
- 5
- Severity
- error
Sample message
Scripts must be registered/enqueued via wp_enqueue_script()
WARNINGMaintainabilityNon-prefixed classClasses declared by a theme/plugin should start with the theme/plugin prefix. Found: "Elementor_Form_Friendlycaptcha_Field".4
- Category
- Maintainability
- Occurrences
- 4
- Severity
- warning
Sample message
Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "Elementor_Form_Friendlycaptcha_Field".
WARNINGMaintainabilityNon-prefixed constantGlobal constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "FRIENDLY_CAPTCHA_FRIENDLY_CAPTCHA_SDK_VERSION".4
- Category
- Maintainability
- Occurrences
- 4
- Severity
- warning
Sample message
Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "FRIENDLY_CAPTCHA_FRIENDLY_CAPTCHA_SDK_VERSION".
WARNINGSecurityNonce verification recommendedProcessing form data without nonce verification.4
- Category
- Security
- Occurrences
- 4
- Severity
- warning
Sample message
Processing form data without nonce verification.
Show 15 moreShow less
WARNINGSecurityRequest data is not unslashed4
- Category
- Security
- Occurrences
- 4
- Severity
- warning
Sample message
$_POST[$fieldName] not unslashed before sanitization. Use wp_unslash() or similar
ERRORI18nMissing Arg Domain4
- Category
- I18n
- Occurrences
- 4
- Severity
- error
Sample message
Missing $domain parameter in function call to __().
ERRORI18nNon Singular String Literal Text4
- Category
- I18n
- Occurrences
- 4
- Severity
- error
Sample message
The $text parameter must be a single text string literal. Found: $error_message
WARNINGMaintainabilityNon-prefixed function3
- Category
- Maintainability
- Occurrences
- 3
- Severity
- warning
Sample message
Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "add_friendly_captcha".
WARNINGMaintainabilityerror log trigger error3
- Category
- Maintainability
- Occurrences
- 3
- Severity
- warning
Sample message
trigger_error() found. Debug code should not normally be used in production.
WARNINGSecurityInput is not sanitized3
- Category
- Security
- Occurrences
- 3
- Severity
- warning
Sample message
Detected usage of a non-sanitized input variable: $_POST[$fieldName]
WARNINGMaintainabilityNo PHP code found2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- warning
Sample message
No PHP code was found in this file and short open tags are not allowed by this install of PHP. This file may be using short open tags but PHP does not allow them.
WARNINGSecurityInput is not validated2
- Category
- Security
- Occurrences
- 2
- Severity
- warning
Sample message
Detected usage of a possibly undefined superglobal array index: $_POST['formData']. Check that the array index exists before using it.
ERRORI18nMissing Translators Comment2
- Category
- I18n
- Occurrences
- 2
- Severity
- error
Sample message
A function call to __() with texts containing placeholders was found, but was not accompanied by a "translators:" comment on the line above to clarify the meaning of the placeholders.
WARNINGMaintainabilitytrademarked term2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- warning
Sample message
The plugin name includes a restricted term. Your chosen plugin name - "Friendly Captcha for WordPress" - contains the restricted term "wordpress" which cannot be used at all in your plugin name.
ERRORRepo Complianceoutdated tested upto header1
- Category
- Repo Compliance
- Occurrences
- 1
- Severity
- error
Sample message
Tested up to: 6.8 < 7.0. The "Tested up to" value in your plugin is not set to the current version of WordPress. This means your plugin will not show up in searches, as we require plugins to be compatible and documented as tested up to the most recent version of WordPress.
WARNINGRepo Complianceplugin header nonexistent domain path1
- Category
- Repo Compliance
- Occurrences
- 1
- Severity
- warning
Sample message
The "Domain Path" header in the plugin file must point to an existing folder. Found: "languages"
WARNINGRepo Compliancereadme parser warnings too many tags1
- Category
- Repo Compliance
- Occurrences
- 1
- Severity
- warning
Sample message
One or more tags were ignored. Please limit your plugin to 5 tags.
WARNINGI18ntextdomain mismatch1
- Category
- I18n
- Occurrences
- 1
- Severity
- warning
Sample message
The "Text Domain" header in the plugin file does not match the slug. Found "frcaptcha", expected "friendly-captcha".
ERRORMaintainabilitywp function not compatible with requires wp1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- error
Sample message
Function "wp_date()" requires WordPress 5.3.0, but your plugin minimum supported version is WordPress 5.0.0.
External Connections
Potential connections found in static code analysis.
Outbound calls
57
External assets
1
Incoming endpoints
0
Notable Domains
Platform / Reference Domains
External Asset Domains
Incoming Endpoints
No public endpoints detected.
Score History
2 score snapshots
v1.17.2
35
Latest
- Findings
- 254
- Errors
- 192
- Warnings
- 62
- Check
- 2.0.0
v1.17.0
35
Score
- Findings
- 254
- Errors
- 192
- Warnings
- 62
- Check
- 2.0.0
| Scan | Score | Findings | Errors | Warnings | Plugin | Check |
|---|---|---|---|---|---|---|
| Latest | 35 | 254 | 192 | 62 | v1.17.2 | 2.0.0 |
| 35 | 254 | 192 | 62 | v1.17.0 | 2.0.0 |
Relationship Map
Author, categories, issues, domains, and nearby plugins.