Events calendar with bookings, scheduling, appointments, event registration, tickets, recurring events, and venue management.
Category Scores
Top Issues by Category
security4,556
maintainability4,153
Issues Details
10,343 issues found in latest scan
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" '{$EM_Event->event_name}'"'.
Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$$em_taxonomy_property".
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'em_'. self::$instance->terms_name .'_output_'. self::$instance->terms_name".
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.
Processing form data without nonce verification.
PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;
Use placeholders and $wpdb->prepare(); found $EM_Booking
All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.
$_COOKIE['em_notices'] not unslashed before sanitization. Use wp_unslash() or similar
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['em_notices']
Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "add_content_filter_template_include".
Mismatched text domain. Expected 'events-manager' but got 'cpt type and view type'.
Unescaped parameter $EM_Booking->fields used in $wpdb->get_results()\n$EM_Booking->fields used without escaping.
Use placeholders and $wpdb->prepare(); found interpolated variable $booking_ids_imploded at " WHERE meta_key IN ('_registration|$meta_key', '_registration|{$meta_key}_revoked') AND booking_id IN ($booking_ids_imploded)"
Processing form data without nonce verification.
Detected usage of a possibly undefined superglobal array index: $_FILES[$files_key]['name']. Check that the array index exists before using it.
Namespaces declared by a theme/plugin should start with the theme/plugin prefix. Found: "EM".
Multiple placeholders in translatable strings should be ordered. Expected "%1$d, %2$d", but got "%d, %d" in 'Found %d orphaned events, deleted %d successfully'.
Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "'UNTRASHING_'.$post_id".
Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "BP_EM_Component".
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<code>{$_POST['em_cp_events_cpts']}</code>"'.
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "static::$basename . '_action_messages'".
| Code | Type | Message | Count |
|---|---|---|---|
| WordPress.Security.EscapeOutput.OutputNotEscaped | ERROR | All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" '{$EM_Event->event_name}'"'. | 1,718 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound | WARNING | Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$$em_taxonomy_property". | 1,147 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound | WARNING | Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'em_'. self::$instance->terms_name .'_output_'. self::$instance->terms_name". | 1,046 |
| 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. | 785 |
| WordPress.Security.NonceVerification.Recommended | WARNING | Processing form data without nonce verification. | 671 |
| missing_direct_file_access_protection | ERROR | PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit; | 530 |
| WordPress.DB.PreparedSQL.NotPrepared | ERROR | Use placeholders and $wpdb->prepare(); found $EM_Booking | 486 |
| WordPress.DB.DirectDatabaseQuery.DirectQuery | WARNING | Use of a direct database call is discouraged. | 452 |
| WordPress.Security.EscapeOutput.UnsafePrintingFunction | ERROR | All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'. | 397 |
| WordPress.Security.ValidatedSanitizedInput.MissingUnslash | WARNING | $_COOKIE['em_notices'] not unslashed before sanitization. Use wp_unslash() or similar | 380 |
| WordPress.DB.DirectDatabaseQuery.NoCaching | WARNING | Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete(). | 379 |
| WordPress.Security.ValidatedSanitizedInput.InputNotSanitized | WARNING | Detected usage of a non-sanitized input variable: $_COOKIE['em_notices'] | 370 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFound | WARNING | Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "add_content_filter_template_include". | 309 |
| WordPress.WP.I18n.TextDomainMismatch | ERROR | Mismatched text domain. Expected 'events-manager' but got 'cpt type and view type'. | 207 |
| PluginCheck.Security.DirectDB.UnescapedDBParameter | ERROR | Unescaped parameter $EM_Booking->fields used in $wpdb->get_results()\n$EM_Booking->fields used without escaping. | 158 |
| WordPress.DB.PreparedSQL.InterpolatedNotPrepared | WARNING | Use placeholders and $wpdb->prepare(); found interpolated variable $booking_ids_imploded at " WHERE meta_key IN ('_registration|$meta_key', '_registration|{$meta_key}_revoked') AND booking_id IN ($booking_ids_imploded)" | 116 |
| WordPress.WP.I18n.MissingArgDomain | ERROR | Missing $domain parameter in function call to __(). | 109 |
| WordPress.Security.NonceVerification.Missing | WARNING | Processing form data without nonce verification. | 104 |
| WordPress.Security.ValidatedSanitizedInput.InputNotValidated | WARNING | Detected usage of a possibly undefined superglobal array index: $_FILES[$files_key]['name']. Check that the array index exists before using it. | 100 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedNamespaceFound | WARNING | Namespaces declared by a theme/plugin should start with the theme/plugin prefix. Found: "EM". | 96 |
| WordPress.WP.I18n.UnorderedPlaceholdersText | ERROR | Multiple placeholders in translatable strings should be ordered. Expected "%1$d, %2$d", but got "%d, %d" in 'Found %d orphaned events, deleted %d successfully'. | 86 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedConstantFound | WARNING | Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "'UNTRASHING_'.$post_id". | 74 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedClassFound | WARNING | Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "BP_EM_Component". | 70 |
| WordPress.Security.EscapeOutput.ExceptionNotEscaped | ERROR | All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<code>{$_POST['em_cp_events_cpts']}</code>"'. | 56 |
| WordPress.NamingConventions.PrefixAllGlobals.DynamicHooknameFound | WARNING | Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "static::$basename . '_action_messages'". | 50 |
Latest Snapshot
Findings
10,343
Errors
4,722
Warnings
5,621
Score History
First score snapshot
First scan completed Jun 20, 2026
v7.3.6 · Plugin Check 2.0.0 · Model 2026.06-mvp-static-v2
Jun 20, 2026
v7.3.6
22
Latest
- Findings
- 10,343
- Errors
- 4,722
- Warnings
- 5,621
- Plugin Check
- 2.0.0
- Model
- 2026.06-mvp-static-v2
| Scan | Score | Findings | Errors | Warnings | Plugin | Plugin Check | Model |
|---|---|---|---|---|---|---|---|
| Jun 20, 2026Latest | 22 | 10,343 | 4,722 | 5,621 | v7.3.6 | 2.0.0 | 2026.06-mvp-static-v2 |