Moodle LMS integration with WordPress to sell Moodle courses through WooCommerce and automate student enrollment.
Category Scores
Issues to Review
Prioritized issue groups from the latest Plugin Check scan
Maintainability
40
15 issue groups
Security
11
4 issue groups
I18n
2
2 issue groups
Performance
1
1 issue group
WARNINGMaintainabilityNo CachingDirect database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().8
- Category
- Maintainability
- Occurrences
- 8
- Severity
- warning
Sample message
Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().
WARNINGMaintainabilityNon-prefixed global variableGlobal variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$product_id".8
- Category
- Maintainability
- Occurrences
- 8
- Severity
- warning
Sample message
Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$product_id".
WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.5
- Category
- Maintainability
- Occurrences
- 5
- Severity
- warning
Sample message
Use of a direct database call is discouraged.
WARNINGMaintainabilityslow db query meta queryDetected usage of meta_query, possible slow query.5
- Category
- Maintainability
- Occurrences
- 5
- Severity
- warning
Sample message
Detected usage of meta_query, possible slow query.
WARNINGSecurityDatabase parameter is not escapedUnescaped parameter $query used in $wpdb->get_results()\n$query assigned unsafely at line 112.4
- Category
- Security
- Occurrences
- 4
- Severity
- warning
Sample message
Unescaped parameter $query used in $wpdb->get_results()\n$query assigned unsafely at line 112.
ERRORSecuritySQL query is not preparedUse placeholders and $wpdb->prepare(); found $category_migration_query4
- Category
- Security
- Occurrences
- 4
- Severity
- error
Sample message
Use placeholders and $wpdb->prepare(); found $category_migration_query
WARNINGMaintainabilityNon-prefixed hook nameHook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "kothay_dabba".4
- Category
- Maintainability
- Occurrences
- 4
- Severity
- warning
Sample message
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "kothay_dabba".
ERRORSecurityDatabase parameter is not escapedUnescaped parameter $sql used in $wpdb->get_results()\n$sql assigned unsafely at line 130.2
- Category
- Security
- Occurrences
- 2
- Severity
- error
Sample message
Unescaped parameter $sql used in $wpdb->get_results()\n$sql assigned unsafely at line 130.
WARNINGI18nDiscouraged text-domain loadingload_plugin_textdomain() has been discouraged since WordPress version 4.6. When your plugin is hosted on WordPress.org, you no longer need to manually include this function call for translations under your plugin slug. WordPress will automatically load the translations for you as needed.1
- Category
- I18n
- Occurrences
- 1
- Severity
- warning
Sample message
load_plugin_textdomain() has been discouraged since WordPress version 4.6. When your plugin is hosted on WordPress.org, you no longer need to manually include this function call for translations under your plugin slug. WordPress will automatically load the translations for you as needed.
WARNINGMaintainabilitySchema ChangeAttempting a database schema change is discouraged.1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
Attempting a database schema change is discouraged.
Show 13 moreShow less
WARNINGSecurityInterpolated SQL is not prepared1
- Category
- Security
- Occurrences
- 1
- Severity
- warning
Sample message
Use placeholders and $wpdb->prepare(); found interpolated variable {$table_name} at "ALTER TABLE {$table_name}\n
WARNINGMaintainabilityslow db query meta key1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
Detected usage of meta_key, possible slow query.
WARNINGMaintainabilityerror log debug backtrace1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
debug_backtrace() found. Debug code should not normally be used in production.
WARNINGMaintainabilityerror log error log1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
error_log() found. Debug code should not normally be used in production.
WARNINGMaintainabilityerror log wp debug backtrace summary1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
wp_debug_backtrace_summary() found. Debug code should not normally be used in production.
ERRORI18nMissing Translators Comment1
- Category
- I18n
- Occurrences
- 1
- Severity
- error
Sample message
A function call to _n() 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.
WARNINGPerformancePost Not In exclude1
- Category
- Performance
- Occurrences
- 1
- Severity
- warning
Sample message
Using exclusionary parameters, like exclude, in calls to get_posts() should be done with caution, see https://wpvip.com/documentation/performance-improvements-by-removing-usage-of-post__not_in/ for more information.
ERRORMaintainabilityinvalid tested upto minor1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- error
Sample message
Tested up to: 7.0.0 The version number should only include major versions 7.0.
WARNINGMaintainabilitymismatched plugin name1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
Plugin name "MooWoodle – WordPress Moodle LMS Integration, Sell Moodle Courses via WooCommerce" is different from the name declared in plugin header "MooWoodle".
WARNINGMaintainabilitymissing composer json file1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
The "/vendor" directory using composer exists, but "composer.json" file is missing.
ERRORMaintainabilityMissing direct file access protection1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- error
Sample message
PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;
ERRORRepo Complianceplugin header no license1
- Category
- Repo Compliance
- Occurrences
- 1
- Severity
- error
Sample message
Missing "License" in Plugin Header. Please update your Plugin Header with a valid GPLv2 (or later) compatible license.
WARNINGMaintainabilitytrademarked term1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
The plugin name includes a restricted term. Your chosen plugin name - "MooWoodle – WordPress Moodle LMS Integration, Sell Moodle Courses via WooCommerce" - contains the restricted term "woocommerce" which cannot be used within in your plugin name, unless your plugin name contains one of the allowed patterns: "for woocommerce", "with woocommerce", "using woocommerce", or "and woocommerce". The term must still not appear anywhere else in your name.
External Connections
Potential connections found in static code analysis.
Outbound calls
37
External assets
1
Incoming endpoints
0
Notable Domains
Platform / Reference Domains
External Asset Domains
Incoming Endpoints
No public endpoints detected.
Score History
First score snapshot
v3.4.3
63
Latest
- Findings
- 55
- Errors
- 10
- Warnings
- 45
- Check
- 2.0.0
| Scan | Score | Findings | Errors | Warnings | Plugin | Check |
|---|---|---|---|---|---|---|
| Latest | 63 | 55 | 10 | 45 | v3.4.3 | 2.0.0 |
Relationship Map
Author, categories, issues, domains, and nearby plugins.