YayCurrency – WooCommerce Multi-Currency Switcher

WooCommerce Multi-Currency made easy, powerful, and flexible.

v3.3.4YayCommerceUpdated Added 8k+ installs96% rating
24
Score
373
Errors
623
Warnings
+0
Change

Category Scores

Security0
Repo70
Performance100
Maintainability18

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

996 findings

Maintainability

431

12 issue groups

I18n

344

4 issue groups

Security

216

2 issue groups

Repo Compliance

4

4 issue groups

ERRORI18nText Domain MismatchMismatched text domain. Expected 'yaycurrency' but got 'dokan'.337
Category
I18n
Occurrences
337
Severity
error

Sample message

Mismatched text domain. Expected 'yaycurrency' but got 'dokan'.

WARNINGSecurityNonce verification recommendedProcessing form data without nonce verification.141
Category
Security
Occurrences
141
Severity
warning

Sample message

Processing form data without nonce verification.

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

Sample message

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

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

Sample message

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

WARNINGMaintainabilityNon-prefixed namespaceNamespaces declared by a theme/plugin should start with the theme/plugin prefix. Found: "Yay_Currency".96
Category
Maintainability
Occurrences
96
Severity
warning

Sample message

Namespaces declared by a theme/plugin should start with the theme/plugin prefix. Found: "Yay_Currency".

WARNINGSecurityRequest data is not unslashed$_GET['currency'] not unslashed before sanitization. Use wp_unslash() or similar75
Category
Security
Occurrences
75
Severity
warning

Sample message

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

WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.34
Category
Maintainability
Occurrences
34
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().34
Category
Maintainability
Occurrences
34
Severity
warning

Sample message

Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().

ERRORMaintainabilitywp function not compatible with requires wpFunction "determine_locale()" requires WordPress 5.0.0, but your plugin minimum supported version is WordPress 4.7.0.18
Category
Maintainability
Occurrences
18
Severity
error

Sample message

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

ERRORMaintainabilityMissing direct file access protectionPHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;8
Category
Maintainability
Occurrences
8
Severity
error

Sample message

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

Show 13 more
WARNINGMaintainabilityNon-prefixed constant7
Category
Maintainability
Occurrences
7
Severity
warning

Sample message

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

ERRORI18nNon Singular String Literal Text5
Category
I18n
Occurrences
5
Severity
error

Sample message

The $text parameter must be a single text string literal. Found: $all_currencies[ $currency->post_title ]

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.

WARNINGMaintainabilityslow db query meta query1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Detected usage of meta_query, possible slow query.

ERRORMaintainabilitystrip tags strip tags1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

strip_tags() is discouraged. Use the more comprehensive wp_strip_all_tags() instead.

ERRORSupply ChainHidden files included1
Category
Supply Chain
Occurrences
1
Severity
error

Sample message

Hidden files are not permitted.

WARNINGMaintainabilitymismatched plugin name1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Plugin name "YayCurrency - WooCommerce Multi-Currency Switcher" is different from the name declared in plugin header "YayCurrency".

ERRORRepo Compliancemismatched tested up to header1
Category
Repo Compliance
Occurrences
1
Severity
error

Sample message

Mismatched "Tested up to": 7.0 != 6.9.4. The "Tested up to" value in the readme file must match the "Tested up to" value in the plugin header. If the plugin header has a "Tested up to" value, it will override the readme value, which can cause confusion.

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.

ERRORRepo Compliancereadme mismatched header requires1
Category
Repo Compliance
Occurrences
1
Severity
error

Sample message

Mismatched Requires at least: 3.0 != 4.7. "Requires at least" needs to be exactly the same with that in your main plugin file's header.

WARNINGRepo Compliancereadme parser warnings too many tags1
Category
Repo Compliance
Occurrences
1
Severity
warning

Sample message

One or more tags were ignored. Please limit your plugin to 5 tags.

WARNINGI18ntextdomain mismatch1
Category
I18n
Occurrences
1
Severity
warning

Sample message

The "Text Domain" header in the plugin file does not match the slug. Found "yay-currency", expected "yaycurrency".

WARNINGMaintainabilitytrademarked term1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

The plugin name includes a restricted term. Your chosen plugin name - "YayCurrency - WooCommerce Multi-Currency Switcher" - contains the restricted term "woocommerce" which cannot be used within in your plugin name, unless your plugin name contains one of the allowed patterns: "for woocommerce", "with woocommerce", "using woocommerce", or "and woocommerce". The term must still not appear anywhere else in your name.

External Connections

Not analyzed yet.

Score History

First score snapshot

v3.3.4

24

Latest

Findings
996
Errors
373
Warnings
623
Check
2.0.0

Relationship Map

Author, categories, issues, domains, and nearby plugins.

29 nodes

Related Plugins

AboveWP Bulgarian Eurozone

3k+ active installs

81
RealHomes Currency Switcher

1k+ active installs

79
70
Currency Converter Widget

3k+ active installs

44