Use native PHP sessions and stay horizontally scalable. Better living through superior technology.
Category Scores
Issues to Review
Prioritized issue groups from the latest Plugin Check scan
Maintainability
78
9 issue groups
Security
38
6 issue groups
I18n
4
1 issue group
Repo Compliance
2
2 issue groups
WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.31
- Category
- Maintainability
- Occurrences
- 31
- Severity
- warning
Sample message
Use of a direct database call is discouraged.
WARNINGMaintainabilityNo CachingDirect database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().30
- Category
- Maintainability
- Occurrences
- 30
- Severity
- warning
Sample message
Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().
ERRORSecurityNot PreparedUse placeholders and $wpdb->prepare(); found $count_query20
- Category
- Security
- Occurrences
- 20
- Severity
- error
Sample message
Use placeholders and $wpdb->prepare(); found $count_query
WARNINGMaintainabilityDiscouragedThe use of function ini_set() is discouraged8
- Category
- Maintainability
- Occurrences
- 8
- Severity
- warning
Sample message
The use of function ini_set() is discouraged
WARNINGSecurityRecommendedProcessing form data without nonce verification.6
- Category
- Security
- Occurrences
- 6
- Severity
- warning
Sample message
Processing form data without nonce verification.
WARNINGSecurityMissing Unslash$_GET['nonce'] not unslashed before sanitization. Use wp_unslash() or similar5
- Category
- Security
- Occurrences
- 5
- Severity
- warning
Sample message
$_GET['nonce'] not unslashed before sanitization. Use wp_unslash() or similar
WARNINGSecurityInput Not SanitizedDetected usage of a non-sanitized input variable: $_GET['nonce']4
- Category
- Security
- Occurrences
- 4
- Severity
- warning
Sample message
Detected usage of a non-sanitized input variable: $_GET['nonce']
ERRORI18nUnordered Placeholders TextMultiple placeholders in translatable strings should be ordered. Expected "%1$d, %2$d, %3$d", but got "%d, %d, %d" in 'Finalizing site %d. In the event of a timeout or error, resume execution starting from this point via "wp pantheon session primary-key-finalize --start_point=%d". To skip this site if it does not need processing, run "wp pantheon session primary-key-finalize --start_point=%d".'.4
- Category
- I18n
- Occurrences
- 4
- Severity
- error
Sample message
Multiple placeholders in translatable strings should be ordered. Expected "%1$d, %2$d, %3$d", but got "%d, %d, %d" in 'Finalizing site %d. In the event of a timeout or error, resume execution starting from this point via "wp pantheon session primary-key-finalize --start_point=%d". To skip this site if it does not need processing, run "wp pantheon session primary-key-finalize --start_point=%d".'.
WARNINGMaintainabilitySchema ChangeAttempting a database schema change is discouraged.2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- warning
Sample message
Attempting a database schema change is discouraged.
WARNINGMaintainabilityerror log trigger errortrigger_error() found. Debug code should not normally be used in production.2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- warning
Sample message
trigger_error() found. Debug code should not normally be used in production.
Show 8 moreShow less
WARNINGSecurityInput Not Validated2
- Category
- Security
- Occurrences
- 2
- Severity
- warning
Sample message
Detected usage of a possibly undefined superglobal array index: $_GET['nonce']. Check that the array index exists before using it.
ERRORMaintainabilitymissing direct file access protection2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- error
Sample message
PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;
ERRORSecurityOutput Not Escaped1
- Category
- Security
- Occurrences
- 1
- Severity
- error
Sample message
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '__'.
ERRORMaintainabilityparse url parse url1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- error
Sample message
parse_url() is discouraged because of inconsistency in the output across PHP versions; use wp_parse_url() instead.
ERRORRepo Complianceoutdated tested upto header1
- Category
- Repo Compliance
- Occurrences
- 1
- Severity
- error
Sample message
Tested up to: 6.9 < 7.0. The "Tested up to" value in your plugin is not set to the current version of WordPress. This means your plugin will not show up in searches, as we require plugins to be compatible and documented as tested up to the most recent version of WordPress.
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 slug includes a restricted term. Your plugin slug - "wp-native-php-sessions" - contains the restricted term "wp" which cannot be used at all in your plugin slug.
WARNINGMaintainabilityupgrade notice limit1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
The upgrade notice for "1.4.0 (October 17, 2023)" exceeds the limit of 300 characters.
Score History
First score snapshot
v1.4.5
38
Latest
- Findings
- 122
- Errors
- 30
- Warnings
- 92
- Check
- 2.0.0
| Scan | Score | Findings | Errors | Warnings | Plugin | Check |
|---|---|---|---|---|---|---|
| Latest | 38 | 122 | 30 | 92 | v1.4.5 | 2.0.0 |