An AI-powered WordPress automation chatbot plugin that helps you automate support, engage visitors, and answer questions using OpenAI or Google Gemini
Category Scores
Issues to Review
Prioritized issue groups from the latest Plugin Check scan
I18n
217
1 issue group
Maintainability
120
10 issue groups
Security
105
6 issue groups
ERRORI18nText Domain MismatchMismatched text domain. Expected 'zeno-chatbot-ai' but got 'woocommerce'.217
- Category
- I18n
- Occurrences
- 217
- Severity
- error
Sample message
Mismatched text domain. Expected 'zeno-chatbot-ai' but got 'woocommerce'.
ERRORSecurityException output is not escapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"The bulk action $action does not have a callback method"'.83
- Category
- Security
- Occurrences
- 83
- Severity
- error
Sample message
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"The bulk action $action does not have a callback method"'.
WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.46
- Category
- Maintainability
- Occurrences
- 46
- Severity
- warning
Sample message
Use of a direct database call is discouraged.
WARNINGMaintainabilityNo CachingDirect database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().40
- Category
- Maintainability
- Occurrences
- 40
- Severity
- warning
Sample message
Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().
WARNINGSecurityDatabase parameter is not escapedUnescaped parameter $column_name used in $wpdb->get_var()16
- Category
- Security
- Occurrences
- 16
- Severity
- warning
Sample message
Unescaped parameter $column_name used in $wpdb->get_var()
WARNINGMaintainabilityNon-prefixed functionFunctions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "as_enqueue_async_action".12
- Category
- Maintainability
- Occurrences
- 12
- Severity
- warning
Sample message
Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "as_enqueue_async_action".
WARNINGMaintainabilityNon-prefixed hook nameHook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "admin_memory_limit".6
- Category
- Maintainability
- Occurrences
- 6
- Severity
- warning
Sample message
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "admin_memory_limit".
ERRORMaintainabilityMissing direct file access protectionPHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;5
- Category
- Maintainability
- Occurrences
- 5
- Severity
- error
Sample message
PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;
WARNINGMaintainabilityDynamic hook nameHook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "$hook".4
- Category
- Maintainability
- Occurrences
- 4
- Severity
- warning
Sample message
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "$hook".
WARNINGMaintainabilityDiscouraged PHP functionThe use of function ini_set() is discouraged3
- Category
- Maintainability
- Occurrences
- 3
- Severity
- warning
Sample message
The use of function ini_set() is discouraged
Show 7 moreShow less
WARNINGSecurityInterpolated SQL is not prepared3
- Category
- Security
- Occurrences
- 3
- Severity
- warning
Sample message
Use placeholders and $wpdb->prepare(); found interpolated variable {$order} at "SELECT action_id from {$wpdb->actionscheduler_actions} {$where} {$order} LIMIT %d FOR UPDATE{$skip_locked}"
ERRORMaintainabilitywp function not compatible with requires wp2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- error
Sample message
Function "wp_cache_flush_runtime()" requires WordPress 6.0.0, but your plugin minimum supported version is WordPress 5.9.0.
ERRORSecurityDatabase parameter is not escaped1
- Category
- Security
- Occurrences
- 1
- Severity
- error
Sample message
Unescaped parameter $update_sql used in $wpdb->query()\n$update_sql assigned unsafely at line 1007.
ERRORSecuritySQL query is not prepared1
- Category
- Security
- Occurrences
- 1
- Severity
- error
Sample message
Use placeholders and $wpdb->prepare(); found $update_sql
ERRORMaintainabilitydate date1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- error
Sample message
date() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead.
WARNINGMaintainabilityNon-prefixed class1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "WP_Async_Request".
ERRORSecurityOutput is not escaped1
- Category
- Security
- Occurrences
- 1
- Severity
- error
Sample message
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found 'wc_help_tip'.
External Connections
Potential connections found in static code analysis.
Outbound calls
299
External assets
0
Incoming endpoints
1
Notable Domains
Platform / Reference Domains
External Asset Domains
No external asset domains detected.
Incoming Endpoints
wp_ajax
Score History
First score snapshot
v1.5.2
36
Latest
- Findings
- 442
- Errors
- 311
- Warnings
- 131
- Check
- 2.0.0
| Scan | Score | Findings | Errors | Warnings | Plugin | Check |
|---|---|---|---|---|---|---|
| Latest | 36 | 442 | 311 | 131 | v1.5.2 | 2.0.0 |
Relationship Map
Author, categories, issues, domains, and nearby plugins.