74% wpc-free-shipping-bar

Code Review | WPC Free Shipping Bar for WooCommerce

WordPress plugin WPC Free Shipping Bar for WooCommerce scored 74% from 54 tests.

About plugin

  • Plugin page: wpc-free-shipping...
  • Plugin version: 1.3.0
  • PHP version: 7.4.16
  • WordPress compatibility: 4.0-6.3
  • WordPress version: 6.3.1
  • First release: Sep 1, 2021
  • Latest release: Sep 27, 2023
  • Number of updates: 24
  • Update frequency: every 31.5 days
  • Top authors: wpclever (100%)

Code review

54 tests

User reviews

5 reviews

Install metrics

1,000+ active / 12,320 total downloads

Benchmarks

Plugin footprint 65% from 16 tests

Installer Passed 1 test

🔺 Critical test (weight: 50) | All plugins must install correctly, without throwing any errors, warnings, or notices
Install script ran successfully

Server metrics [RAM: ▼1.69MB] [CPU: ▼49.05ms] Passed 4 tests

Analyzing server-side resources used by WPC Free Shipping Bar for WooCommerce
This plugin does not affect your website's performance
PageMemory (MB)CPU Time (ms)
Home /2.30 ▼1.165.98 ▼42.69
Dashboard /wp-admin2.32 ▼0.989.65 ▼35.73
Posts /wp-admin/edit.php2.32 ▼1.0310.55 ▼36.17
Add New Post /wp-admin/post-new.php2.32 ▼3.568.64 ▼81.59
Media Library /wp-admin/upload.php2.32 ▼0.917.27 ▼25.53
About /wp-admin/admin.php?page=wpclever2.327.34
Essential Kit /wp-admin/admin.php?page=wpclever-kit2.326.56

Server storage [IO: ▲0.08MB] [DB: ▲0.02MB] Passed 3 tests

Analyzing filesystem and database footprints of this plugin
No storage issues were detected
Filesystem: 13 new files
Database: no new tables, 6 new options
New WordPress options
db_upgraded
widget_theysaidso_widget
can_compress_scripts
theysaidso_admin_options
widget_recent-posts
widget_recent-comments

Browser metrics Passed 4 tests

An overview of browser requirements for WPC Free Shipping Bar for WooCommerce
There were no issues detected in relation to browser resource usage
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /2,869 ▲12313.46 ▼0.921.71 ▼0.4540.32 ▼6.45
Dashboard /wp-admin2,260 ▲724.93 ▼0.95115.43 ▲12.5580.76 ▲39.48
Posts /wp-admin/edit.php2,162 ▲732.05 ▲0.0137.50 ▼5.1134.44 ▼3.96
Add New Post /wp-admin/post-new.php1,734 ▲19222.59 ▲4.33749.34 ▲109.3951.74 ▼3.62
Media Library /wp-admin/upload.php1,454 ▲694.16 ▼0.13122.97 ▲20.2149.14 ▲5.23
About /wp-admin/admin.php?page=wpclever1,3882.1635.2247.37
Essential Kit /wp-admin/admin.php?page=wpclever-kit5,7122.1633.6161.50

Uninstaller [IO: ▲0.00MB] [DB: ▲0.02MB] 50% from 4 tests

🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
You still need to fix the following
  • This plugin cannot be uninstalled
    • > Warning in wp-includes/class-wp-hook.php+310
    call_user_func_array() expects parameter 1 to be a valid callback, function 'wpcfb_init' not found or invalid function name
  • This plugin does not fully uninstall, leaving 6 options in the database
    • widget_recent-comments
    • widget_theysaidso_widget
    • widget_recent-posts
    • theysaidso_admin_options
    • can_compress_scripts
    • db_upgraded

Smoke tests 75% from 4 tests

Server-side errors 0% from 1 test

🔹 Test weight: 20 | Just a short smoke test targeting errors on the server (in the Apache logs)
Smoke test failed, please fix the following
  • 4 occurences, only the last one shown
    • > GET request to /wp-admin/admin.php?page=wpclever-kit
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-includes/class-wp-hook.php+310
    call_user_func_array() expects parameter 1 to be a valid callback, function 'wpcfb_init' not found or invalid function name
  • 2 occurences, only the last one shown
    • > GET request to /wp-admin/admin.php?page=wpclever-kit
    • > Warning in wp-includes/class-wp-hook.php+310
    call_user_func_array() expects parameter 1 to be a valid callback, function 'wpcfb_notice_wc' not found or invalid function name

SRP Passed 2 tests

🔹 Tests weight: 20 | The single-responsibility principle applies for WordPress plugins as well - please make sure your PHP files perform no actions when accessed directly
Congratulations! This plugin passed the SRP test

User-side errors Passed 1 test

🔹 Test weight: 20 | A shallow check that no browser errors were triggered
No browser errors were detected

Optimizations

Plugin configuration 97% from 29 tests

readme.txt 94% from 16 tests

The readme.txt file is an important file in your plugin as it is parsed by WordPress.org to prepare the public listing of your plugin
These attributes need to be fixed: You can look at the official readme.txt

wpc-free-shipping-bar/wpc-free-shipping-bar.php Passed 13 tests

"WPC Free Shipping Bar for WooCommerce" version 1.3.0's main PHP file describes plugin functionality and also serves as the entry point to any WordPress functionality
118 characters long description:
Encourage customers to increase their order value to be qualified for free shipping with a beautiful customizable bar.

Code Analysis Passed 3 tests

File types Passed 1 test

🔸 Test weight: 35 | An overview of files in this plugin; executable files are not allowed
Everything looks great! No dangerous files found in this plugin1,476 lines of code in 11 files:
LanguageFilesBlank linesComment linesLines of code
PHP412630931
CSS3826446
JavaScript310270
SVG10029

PHP code Passed 2 tests

This is a short overview of cyclomatic complexity and code structure for this plugin
There were no cyclomatic complexity issued detected
Cyclomatic complexity
Average complexity per logical line of code0.33
Average class complexity28.00
▷ Minimum class complexity1.00
▷ Maximum class complexity64.00
Average method complexity3.43
▷ Minimum method complexity1.00
▷ Maximum method complexity19.00
Code structure
Namespaces0
Interfaces0
Traits0
Classes4
▷ Abstract classes00.00%
▷ Concrete classes4100.00%
▷ Final classes00.00%
Methods38
▷ Static methods410.53%
▷ Public methods38100.00%
▷ Protected methods00.00%
▷ Private methods00.00%
Functions3
▷ Named functions266.67%
▷ Anonymous functions133.33%
Constants7
▷ Global constants7100.00%
▷ Class constants00.00%
▷ Public constants00.00%

Plugin size Passed 2 tests

Image compression Passed 2 tests

Often times overlooked, PNG files can occupy unnecessary space in your plugin
No PNG images were found in this plugin