Go multilingual in a simple and efficient way. Keep writing posts and taxonomy terms as usual while defining their languages all at once.
Prioritized issue groups from the latest Plugin Check scan
Maintainability
514
15 issue groups
Security
72
8 issue groups
I18n
8
2 issue groups
Sample message
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'pll_' . $obj".
Sample message
Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "PLL_AS3CF".
Sample message
Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "PLL".
Sample message
Namespaces declared by a theme/plugin should start with the theme/plugin prefix. Found: "WP_Syntex\Polylang\Blocks".
Sample message
Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$add_link".
Sample message
Use of a direct database call is discouraged.
Sample message
Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().
Sample message
Use placeholders and $wpdb->prepare(); found interpolated variable $d at "SELECT DATE_FORMAT((DATE_ADD('{$thisyear}0101', INTERVAL $d DAY) ), '%m')"
Sample message
$_REQUEST['_ajax_nonce-add-' . $taxonomy] not unslashed before sanitization. Use wp_unslash() or similar
Sample message
Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "DONOTCACHEPAGE".
Sample message
Detected usage of a non-sanitized input variable: $_REQUEST['_ajax_nonce-add-' . $taxonomy]
Sample message
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$args['after_title']'.
Sample message
PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;
Sample message
Processing form data without nonce verification.
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.
Sample message
Use placeholders and $wpdb->prepare(); found $dayswithposts_prepared_query
Sample message
Detected usage of meta_key, possible slow query.
Sample message
Missing $domain parameter in function call to __().
Sample message
Unescaped parameter $join used in $wpdb->get_results()\n$join assigned unsafely at line 374.
Sample message
Unescaped parameter $dayswithposts_prepared_query used in $wpdb->get_results()\n$dayswithposts_prepared_query assigned unsafely at line 250.
Sample message
Detected usage of tax_query, possible slow query.
Sample message
Plugin Updater detected. These are not permitted in WordPress.org hosted plugins. Detected: class PLL_Plugin_Updater
Sample message
Plugin Updater detected. Detected code which may be altering WordPress update routines. Detected: _site_transient_update_plugins
Sample message
Function "wp_cache_get_salted()" requires WordPress 6.9.0, but your plugin minimum supported version is WordPress 6.5.0.
Sample message
The use of function wp_get_sidebars_widgets() is forbidden
Not analyzed yet.
First score snapshot
v3.8.5
26
Latest
| Scan | Score | Findings | Errors | Warnings | Plugin | Check |
|---|---|---|---|---|---|---|
| Latest | 26 | 600 | 36 | 564 | v3.8.5 | 2.0.0 |
Author, categories, issues, domains, and nearby plugins.