Lucky Wheel for WooCommerce – Spin a Sale

Engage customers with a fun spin-the-wheel game! Collect emails and reward them with discount coupons instantly.

v1.2.1VillaThemeUpdated Added 1k+ installs90% rating
39
Score
12
Errors
153
Warnings
+0
Change

Category Scores

Security0
Repo100
Performance100
Maintainability72

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

165 findings

Security

117

4 issue groups

Maintainability

42

12 issue groups

I18n

6

3 issue groups

WARNINGSecurityRequest data is not unslashed$_GET['button_shop_url'] not unslashed before sanitization. Use wp_unslash() or similar79
Category
Security
Occurrences
79
Severity
warning

Sample message

$_GET['button_shop_url'] not unslashed before sanitization. Use wp_unslash() or similar

WARNINGSecurityInput is not sanitizedDetected usage of a non-sanitized input variable: $_GET['button_shop_url']28
Category
Security
Occurrences
28
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_GET['button_shop_url']

WARNINGMaintainabilityNon-prefixed hook nameHook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "formatted_woocommerce_price".13
Category
Maintainability
Occurrences
13
Severity
warning

Sample message

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "formatted_woocommerce_price".

WARNINGMaintainabilityNon-prefixed constantGlobal constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "VI_WOO_LUCKY_WHEEL_ADMIN".10
Category
Maintainability
Occurrences
10
Severity
warning

Sample message

Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "VI_WOO_LUCKY_WHEEL_ADMIN".

WARNINGSecurityInput is not validatedDetected usage of a possibly undefined superglobal array index: $_POST['coupon_amount'][$i]. Check that the array index exists before using it.8
Category
Security
Occurrences
8
Severity
warning

Sample message

Detected usage of a possibly undefined superglobal array index: $_POST['coupon_amount'][$i]. Check that the array index exists before using it.

WARNINGMaintainabilityNon-prefixed classClasses declared by a theme/plugin should start with the theme/plugin prefix. Found: "VI_WOO_LUCKY_WHEEL_Admin_Admin".6
Category
Maintainability
Occurrences
6
Severity
warning

Sample message

Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "VI_WOO_LUCKY_WHEEL_Admin_Admin".

ERRORI18nText Domain MismatchMismatched text domain. Expected 'woo-lucky-wheel' but got 'woocommerce-lucky-wheel'.4
Category
I18n
Occurrences
4
Severity
error

Sample message

Mismatched text domain. Expected 'woo-lucky-wheel' but got 'woocommerce-lucky-wheel'.

ERRORMaintainabilitywp function not compatible with requires wpFunction "is_php_version_compatible()" requires WordPress 5.2.0, but your plugin minimum supported version is WordPress 5.0.0.3
Category
Maintainability
Occurrences
3
Severity
error

Sample message

Function "is_php_version_compatible()" requires WordPress 5.2.0, but your plugin minimum supported version is WordPress 5.0.0.

WARNINGMaintainabilityNon-prefixed functionFunctions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "vi_include_folder".2
Category
Maintainability
Occurrences
2
Severity
warning

Sample message

Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "vi_include_folder".

WARNINGMaintainabilityNon-prefixed global variableGlobal variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$plugin_url".2
Category
Maintainability
Occurrences
2
Severity
warning

Sample message

Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$plugin_url".

Show 9 more
ERRORSecurityOutput is not escaped2
Category
Security
Occurrences
2
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$field['html']'.

WARNINGI18nDiscouraged text-domain loading1
Category
I18n
Occurrences
1
Severity
warning

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.

WARNINGMaintainabilityShort URL found1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Short URL detected (bit.ly). Use full URLs instead of URL shorteners.

WARNINGMaintainabilityDynamic hook name1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "$name_filter".

ERRORI18nMissing Arg Domain1
Category
I18n
Occurrences
1
Severity
error

Sample message

Missing $domain parameter in function call to esc_html_e().

WARNINGMaintainabilitymismatched plugin name1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Plugin name "Lucky Wheel for WooCommerce - Spin a Sale" is different from the name declared in plugin header "Lucky Wheel for WooCommerce".

ERRORMaintainabilityMissing direct file access protection1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;

WARNINGMaintainabilitytrademarked term1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

The plugin slug includes a restricted term. Your plugin slug - "woo-lucky-wheel" - contains the restricted term "woo" and cannot be used to begin your plugin slug. We disallow the use of certain terms in ways that are abused, or potentially infringe on and/or are misleading with regards to trademarks. You may use the term "woo" elsewhere in your plugin slug, such as "... for woo".

ERRORMaintainabilitytrunk stable tag1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

Incorrect Stable Tag. It's recommended not to use "Stable Tag: trunk". Your Stable Tag is meant to be the stable version of your plugin and it needs to be exactly the same with the Version in your main plugin file's header. Any mismatch can prevent users from downloading the correct plugin files from WordPress.org.

Score History

First score snapshot

v1.2.1

39

Latest

Findings
165
Errors
12
Warnings
153
Check
2.0.0

Related Plugins