Customize your WooCommerce thank you page or redirect customers after checkout to any page or URL—simple, flexible, and tracking-friendly.
Category Scores
Top Issues by Category
maintainability19
security10
i18n3
Issues Details
33 issues found in latest scan
Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$prefix".
error_log() found. Debug code should not normally be used in production.
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.
$_GET['key'] not unslashed before sanitization. Use wp_unslash() or similar
Resource version not set in call to wp_enqueue_script(). This means new versions of the script may not always be loaded due to browser caching.
Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().
Short URL detected (bit.ly). Use full URLs instead of URL shorteners.
Unescaped parameter $sql used in $wpdb->query()\n$sql assigned unsafely at line 19.
Use placeholders and $wpdb->prepare(); found interpolated variable {$table_name} at "DELETE FROM {$table_name} WHERE option_name LIKE %s"
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.
Plugin name "Thank You Page for WooCommerce – Custom Thank You Page & Redirect" is different from the name declared in plugin header "Thank You Page for WooCommerce".
The "/vendor" directory using composer exists, but "composer.json" file is missing.
Mismatched Requires at least: 6.5 != 6.2. "Requires at least" needs to be exactly the same with that in your main plugin file's header.
The plugin slug includes a restricted term. Your plugin slug - "wc-thanks-redirect" - contains the restricted term "wc" which cannot be used at all in your plugin slug.
| Code | Type | Message | Count |
|---|---|---|---|
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound | WARNING | Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$prefix". | 4 |
| WordPress.PHP.DevelopmentFunctions.error_log_error_log | WARNING | error_log() found. Debug code should not normally be used in production. | 4 |
| 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. | 4 |
| WordPress.Security.ValidatedSanitizedInput.MissingUnslash | WARNING | $_GET['key'] not unslashed before sanitization. Use wp_unslash() or similar | 3 |
| WordPress.WP.EnqueuedResourceParameters.MissingVersion | WARNING | Resource version not set in call to wp_enqueue_script(). This means new versions of the script may not always be loaded due to browser caching. | 3 |
| WordPress.DB.DirectDatabaseQuery.DirectQuery | WARNING | Use of a direct database call is discouraged. | 2 |
| WordPress.DB.DirectDatabaseQuery.NoCaching | WARNING | Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete(). | 2 |
| WordPress.WP.I18n.MissingArgDomain | ERROR | Missing $domain parameter in function call to __(). | 2 |
| PluginCheck.CodeAnalysis.ShortURL.Found | WARNING | Short URL detected (bit.ly). Use full URLs instead of URL shorteners. | 1 |
| PluginCheck.Security.DirectDB.UnescapedDBParameter | ERROR | Unescaped parameter $sql used in $wpdb->query()\n$sql assigned unsafely at line 19. | 1 |
| WordPress.DB.PreparedSQL.InterpolatedNotPrepared | WARNING | Use placeholders and $wpdb->prepare(); found interpolated variable {$table_name} at "DELETE FROM {$table_name} WHERE option_name LIKE %s" | 1 |
| WordPress.DB.PreparedSQL.NotPrepared | ERROR | Use placeholders and $wpdb->prepare(); found $sql | 1 |
| 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. | 1 |
| mismatched_plugin_name | WARNING | Plugin name "Thank You Page for WooCommerce – Custom Thank You Page & Redirect" is different from the name declared in plugin header "Thank You Page for WooCommerce". | 1 |
| missing_composer_json_file | WARNING | The "/vendor" directory using composer exists, but "composer.json" file is missing. | 1 |
| readme_mismatched_header_requires | ERROR | Mismatched Requires at least: 6.5 != 6.2. "Requires at least" needs to be exactly the same with that in your main plugin file's header. | 1 |
| trademarked_term | WARNING | The plugin slug includes a restricted term. Your plugin slug - "wc-thanks-redirect" - contains the restricted term "wc" which cannot be used at all in your plugin slug. | 1 |
Latest Snapshot
Findings
33
Errors
6
Warnings
27
Score History
First score snapshot
First scan completed Jun 20, 2026
v4.3.2 · Plugin Check 2.0.0 · Model 2026.06-mvp-static-v2
Jun 20, 2026
v4.3.2
68
Latest
- Findings
- 33
- Errors
- 6
- Warnings
- 27
- Plugin Check
- 2.0.0
- Model
- 2026.06-mvp-static-v2
| Scan | Score | Findings | Errors | Warnings | Plugin | Plugin Check | Model |
|---|---|---|---|---|---|---|---|
| Jun 20, 2026Latest | 68 | 33 | 6 | 27 | v4.3.2 | 2.0.0 | 2026.06-mvp-static-v2 |