Conditional Payments and Shipping for WooCommerce

A simplistic plugin for excluding shipping methods based on multiple rules such as shipping class, package weight and cart totals.

v1.0.15Waseem SenjerUpdated Added 1k+ installs100% rating
35
Score
338
Errors
27
Warnings
+0
Change

Category Scores

Security0
Repo94
Performance100
Maintainability56

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

365 findings

I18n

210

4 issue groups

Security

104

6 issue groups

Maintainability

50

12 issue groups

Repo Compliance

1

1 issue group

ERRORI18nText Domain MismatchMismatched text domain. Expected 'wc-restricted-shipping-and-payment' but got 'cmb2'.165
Category
I18n
Occurrences
165
Severity
error

Sample message

Mismatched text domain. Expected 'wc-restricted-shipping-and-payment' but got 'cmb2'.

ERRORSecurityOutput is not escapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$a['desc']'.87
Category
Security
Occurrences
87
Severity
error

Sample message

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

ERRORI18nMissing Translators CommentA 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.26
Category
I18n
Occurrences
26
Severity
error

Sample message

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.

ERRORMaintainabilitywp function not compatible with requires wpFunction "apply_filters_deprecated()" requires WordPress 4.6.0, but your plugin minimum supported version is WordPress 4.0.0.19
Category
Maintainability
Occurrences
19
Severity
error

Sample message

Function "apply_filters_deprecated()" requires WordPress 4.6.0, but your plugin minimum supported version is WordPress 4.0.0.

ERRORI18nMissing Arg DomainMissing $domain parameter in function call to __().18
Category
I18n
Occurrences
18
Severity
error

Sample message

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

ERRORSecurityException output is not escapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$field'.10
Category
Security
Occurrences
10
Severity
error

Sample message

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

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

Sample message

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

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

Sample message

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

WARNINGMaintainabilityNot In FooterIn footer ($in_footer) is not set explicitly wp_enqueue_script; It is recommended to load scripts in the footer. Please set this value to `true` to load it in the footer, or explicitly `false` if it should be loaded in the header.5
Category
Maintainability
Occurrences
5
Severity
warning

Sample message

In footer ($in_footer) is not set explicitly wp_enqueue_script; It is recommended to load scripts in the footer. Please set this value to `true` to load it in the footer, or explicitly `false` if it should be loaded in the header.

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

Sample message

Processing form data without nonce verification.

Show 13 more
WARNINGMaintainabilityDynamic hook name2
Category
Maintainability
Occurrences
2
Severity
warning

Sample message

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

WARNINGMaintainabilityMissing Version2
Category
Maintainability
Occurrences
2
Severity
warning

Sample message

Resource version not set in call to wp_register_style(). This means new versions of the style may not always be loaded due to browser caching.

ERRORMaintainabilitybadly named files2
Category
Maintainability
Occurrences
2
Severity
error

Sample message

File and folder names must not contain spaces or special characters.

ERRORSecuritySetting is missing a sanitization callback1
Category
Security
Occurrences
1
Severity
error

Sample message

Sanitization missing for register_setting().

WARNINGMaintainabilityslow db query meta query1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Detected usage of meta_query, possible slow query.

WARNINGMaintainabilityNon-prefixed class1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

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

WARNINGMaintainabilityNon-prefixed function1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

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

WARNINGMaintainabilityNon-prefixed global variable1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

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

WARNINGSecurityInput is not sanitized1
Category
Security
Occurrences
1
Severity
warning

Sample message

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

WARNINGSecurityRequest data is not unslashed1
Category
Security
Occurrences
1
Severity
warning

Sample message

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

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.

WARNINGI18ntextdomain mismatch1
Category
I18n
Occurrences
1
Severity
warning

Sample message

The "Text Domain" header in the plugin file does not match the slug. Found "restricted-shipping-and-payment-for-woocommerce", expected "wc-restricted-shipping-and-payment".

WARNINGMaintainabilitytrademarked term1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

The plugin slug includes a restricted term. Your plugin slug - "wc-restricted-shipping-and-payment" - contains the restricted term "wc" which cannot be used at all in your plugin slug.

External Connections

Potential connections found in static code analysis.

19 domains

Outbound calls

126

External assets

0

Incoming endpoints

3

Notable Domains

cmb2.io64 · outbound
wpruby.com15 · outbound
docs.jquery.com4 · outbound
jquery.org4 · outbound
jqueryui.com4 · outbound
v2.wp-api.org3 · outbound

Platform / Reference Domains

github.com16 · platform/reference
codex.wordpress.org2 · platform/reference
core.trac.wordpress.org2 · platform/reference
wordpress.org2 · platform/reference
gnu.org1 · platform/reference
opensource.org1 · platform/reference

External Asset Domains

No external asset domains detected.

Incoming Endpoints

wp_ajax_nopriv_cmb2_oembed_handlerpublic

wp_ajax

Admin AJAX endpoints2
wp_ajax_cmb2_oembed_handlerauthenticated

wp_ajax

wp_ajax_get_rule_type_operatorsauthenticated

wp_ajax

Score History

First score snapshot

v1.0.15

35

Latest

Findings
365
Errors
338
Warnings
27
Check
2.0.0

Relationship Map

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

37 nodes

Related Plugins