A WordPress LMS Plugin to create WordPress Learning Management System. Turn your WordPress to LMS WordPress Website with Courses, Lessons, Quizzes &am …
Category Scores
Top Issues by Category
security2,654
maintainability2,513
Issues Details
5,745 issues found in latest scan
Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$action_attrs".
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" | <a href='{$addon->link_doc}' target='_blank' rel='noopener'>Documentation</a>"'.
Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "Abstract_Block_Template".
Use placeholders and $wpdb->prepare(); found interpolated variable $AND at \t\t\t$AND\n
PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$addon_label'.
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'lp/courses-json/filter/order_by/' . $filter->order_by".
error_log() found. Debug code should not normally be used in production.
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.
All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.
Processing form data without nonce verification.
Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().
Detected usage of a non-sanitized input variable: $_COOKIE[$name]
$_COOKIE[$name] not unslashed before sanitization. Use wp_unslash() or similar
Unescaped parameter $column used in $wpdb->get_row()\n$column assigned unsafely at line 266.
Processing form data without nonce verification.
Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "ADMIN_ROLE".
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.
Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "LP".
Replacement variables found, but no valid placeholders found in the query.
Unescaped parameter $name_table used in $wpdb->query()
date() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead.
| Code | Type | Message | Count |
|---|---|---|---|
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound | WARNING | Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$action_attrs". | 887 |
| WordPress.Security.EscapeOutput.OutputNotEscaped | ERROR | All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" | <a href='{$addon->link_doc}' target='_blank' rel='noopener'>Documentation</a>"'. | 664 |
| WordPress.DB.PreparedSQL.NotPrepared | ERROR | Use placeholders and $wpdb->prepare(); found $col_name | 424 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedClassFound | WARNING | Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "Abstract_Block_Template". | 333 |
| WordPress.DB.PreparedSQL.InterpolatedNotPrepared | WARNING | Use placeholders and $wpdb->prepare(); found interpolated variable $AND at \t\t\t$AND\n | 319 |
| missing_direct_file_access_protection | ERROR | PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit; | 244 |
| WordPress.Security.EscapeOutput.ExceptionNotEscaped | ERROR | All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$addon_label'. | 243 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound | WARNING | Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'lp/courses-json/filter/order_by/' . $filter->order_by". | 240 |
| WordPress.PHP.DevelopmentFunctions.error_log_error_log | WARNING | error_log() found. Debug code should not normally be used in production. | 234 |
| WordPress.WP.I18n.MissingTranslatorsComment | ERROR | 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. | 218 |
| WordPress.Security.EscapeOutput.UnsafePrintingFunction | ERROR | All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'. | 206 |
| WordPress.Security.NonceVerification.Recommended | WARNING | Processing form data without nonce verification. | 199 |
| WordPress.DB.DirectDatabaseQuery.DirectQuery | WARNING | Use of a direct database call is discouraged. | 194 |
| WordPress.DB.DirectDatabaseQuery.NoCaching | WARNING | Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete(). | 170 |
| WordPress.Security.ValidatedSanitizedInput.InputNotSanitized | WARNING | Detected usage of a non-sanitized input variable: $_COOKIE[$name] | 149 |
| WordPress.Security.ValidatedSanitizedInput.MissingUnslash | WARNING | $_COOKIE[$name] not unslashed before sanitization. Use wp_unslash() or similar | 147 |
| PluginCheck.Security.DirectDB.UnescapedDBParameter | ERROR | Unescaped parameter $column used in $wpdb->get_row()\n$column assigned unsafely at line 266. | 121 |
| WordPress.Security.NonceVerification.Missing | WARNING | Processing form data without nonce verification. | 100 |
| WordPress.WP.I18n.MissingArgDomain | ERROR | Missing $domain parameter in function call to __(). | 100 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedConstantFound | WARNING | Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "ADMIN_ROLE". | 71 |
| Internal.NoCodeFound | WARNING | 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. | 65 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFound | WARNING | Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "LP". | 44 |
| WordPress.DB.PreparedSQLPlaceholders.UnfinishedPrepare | WARNING | Replacement variables found, but no valid placeholders found in the query. | 43 |
| PluginCheck.Security.DirectDB.UnescapedDBParameter | WARNING | Unescaped parameter $name_table used in $wpdb->query() | 39 |
| WordPress.DateTime.RestrictedFunctions.date_date | ERROR | date() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead. | 31 |
Latest Snapshot
Findings
5,745
Errors
2,361
Warnings
3,384
Score History
First score snapshot
First scan completed
v4.4.0 · Plugin Check 2.0.0 · Model 2026.06-mvp-static-v2
v4.4.0
22
Latest
- Findings
- 5,745
- Errors
- 2,361
- Warnings
- 3,384
- Plugin Check
- 2.0.0
- Model
- 2026.06-mvp-static-v2
| Scan | Score | Findings | Errors | Warnings | Plugin | Plugin Check | Model |
|---|---|---|---|---|---|---|---|
| Latest | 22 | 5,745 | 2,361 | 3,384 | v4.4.0 | 2.0.0 | 2026.06-mvp-static-v2 |