The Best Ajax Live Search and Filter for WordPress. Live suggestions, Custom Post types, Custom fields, Categories, WooCommerce & Elementor support
Category Scores
Top Issues by Category
maintainability380
Issues Details
390 issues found in latest scan
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "asl/rest/base_url/".
Function "get_network()" requires WordPress 4.6.0, but your plugin minimum supported version is WordPress 3.5.0.
Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$_all_cat".
Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "ASL_Helpers".
Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "asl_decode_params".
date() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead.
Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "ASL_AUTOLOAD_PATH".
PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;
Mismatched text domain. Expected 'ajax-search-lite' but got 'ajax-search-pro'.
Unescaped parameter static::getTableName() . " WHERE phrase LIKE %s LIMIT %d" used in $wpdb->get_results()
wp_redirect() found. Using wp_safe_redirect(), along with the "allowed_redirect_hosts" filter if needed, can help avoid any chances of malicious redirects within code. It is also important to remember to call exit() after a redirect so that no other unwanted code is executed.
File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: fclose().
Plugin name "Ajax Search Lite - Live Search & Filter" is different from the name declared in plugin header "Ajax Search Lite".
The "/vendor" directory using composer exists, but "composer.json" file is missing.
| Code | Type | Message | Count |
|---|---|---|---|
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound | WARNING | Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "asl/rest/base_url/". | 98 |
| wp_function_not_compatible_with_requires_wp | ERROR | Function "get_network()" requires WordPress 4.6.0, but your plugin minimum supported version is WordPress 3.5.0. | 84 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound | WARNING | Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$_all_cat". | 75 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedClassFound | WARNING | Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "ASL_Helpers". | 37 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFound | WARNING | Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "asl_decode_params". | 33 |
| 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. | 24 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedConstantFound | WARNING | Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "ASL_AUTOLOAD_PATH". | 14 |
| missing_direct_file_access_protection | ERROR | PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit; | 10 |
| WordPress.WP.I18n.TextDomainMismatch | ERROR | Mismatched text domain. Expected 'ajax-search-lite' but got 'ajax-search-pro'. | 7 |
| PluginCheck.Security.DirectDB.UnescapedDBParameter | WARNING | Unescaped parameter static::getTableName() . " WHERE phrase LIKE %s LIMIT %d" used in $wpdb->get_results() | 2 |
| WordPress.DB.DirectDatabaseQuery.DirectQuery | WARNING | Use of a direct database call is discouraged. | 2 |
| WordPress.Security.SafeRedirect.wp_redirect_wp_redirect | WARNING | wp_redirect() found. Using wp_safe_redirect(), along with the "allowed_redirect_hosts" filter if needed, can help avoid any chances of malicious redirects within code. It is also important to remember to call exit() after a redirect so that no other unwanted code is executed. | 1 |
| WordPress.WP.AlternativeFunctions.file_system_operations_fclose | ERROR | File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: fclose(). | 1 |
| mismatched_plugin_name | WARNING | Plugin name "Ajax Search Lite - Live Search & Filter" is different from the name declared in plugin header "Ajax Search Lite". | 1 |
| missing_composer_json_file | WARNING | The "/vendor" directory using composer exists, but "composer.json" file is missing. | 1 |
Latest Snapshot
Findings
390
Errors
126
Warnings
264
Score History
First score snapshot
First scan completed
v4.14.4 · Plugin Check 2.0.0 · Model 2026.06-mvp-static-v2
v4.14.4
76
Latest
- Findings
- 390
- Errors
- 126
- Warnings
- 264
- Plugin Check
- 2.0.0
- Model
- 2026.06-mvp-static-v2
| Scan | Score | Findings | Errors | Warnings | Plugin | Plugin Check | Model |
|---|---|---|---|---|---|---|---|
| Latest | 76 | 390 | 126 | 264 | v4.14.4 | 2.0.0 | 2026.06-mvp-static-v2 |