Benchmarks
Plugin footprint 48% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | The install procedure must perform silently
Installer ran successfully
Server metrics [RAM: ▲3.25MB] [CPU: ▼278.37ms] Passed 4 tests
Analyzing server-side resources used by MyRewards - Loyalty Points and Rewards Program for WooCommerce
This plugin has minimal impact on server resources
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 5.89 ▲2.37 | 67.56 ▲17.53 |
Dashboard /wp-admin | 7.00 ▲3.59 | 54.45 ▲23.34 |
Posts /wp-admin/edit.php | 7.22 ▲3.58 | 58.49 ▲21.18 |
Add New Post /wp-admin/post-new.php | 10.45 ▲3.48 | 112.27 ▼1,170.32 |
Media Library /wp-admin/upload.php | 6.88 ▲3.58 | 43.31 ▲18.13 |
System /wp-admin/admin.php?page=woorewards.system | 7.09 | 48.52 |
MyRewards /wp-admin/admin.php?page=woorewards | 7.02 | 49.87 |
Features /wp-admin/admin.php?page=woorewards.settings | 7.22 | 50.17 |
Appearance /wp-admin/admin.php?page=woorewards.appearance | 7.18 | 52.00 |
Wizard /wp-admin/admin.php?page=lwswizard-woorewards | 7.44 | 49.76 |
Points and Rewards /wp-admin/admin.php?page=woorewards.loyalty | 7.05 | 52.74 |
Pro Version /wp-admin/admin.php?page=woorewards-proversion | 7.07 | 47.71 |
Customers /wp-admin/admin.php?page=woorewards.customers | 7.18 | 49.83 |
Server storage [IO: ▲4.41MB] [DB: ▲0.00MB] Passed 3 tests
Analyzing filesystem and database footprints of this plugin
This plugin was installed successfully
Filesystem: 310 new files
Database: 2 new tables, 13 new options
New tables |
---|
wp_lws_wr_achieved_log |
wp_lws_wr_historic |
New WordPress options |
---|
lws_mail_woorewards_attribute_footer |
lws_woorewards_redirect_to_licence |
lws_mail_template_wr_new_reward |
lws_woorewards_cart_content_side |
lws_woorewards_version |
lws_woorewards_install_version |
lws_woorewards_ignore_woocommerce_disable_coupons |
lws_mail_title_wr_new_reward |
lws_woorewards_points_distribution_status |
woocommerce_enable_coupons |
... |
Browser metrics Passed 4 tests
MyRewards - Loyalty Points and Rewards Program for WooCommerce: an overview of browser usage
This plugin renders optimally with no browser resource issues detected
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,858 ▲100 | 15.71 ▼0.24 | 5.66 ▼0.24 | 2.14 ▼0.12 |
Dashboard /wp-admin | 2,989 ▲135 | 6.21 ▼0.06 | 116.91 ▼18.33 | 169.78 ▲10.69 |
Posts /wp-admin/edit.php | 2,780 ▲86 | 3.40 ▲0.04 | 63.08 ▼1.72 | 154.78 ▲12.06 |
Add New Post /wp-admin/post-new.php | 1,722 ▲32 | 22.64 ▲2.20 | 396.00 ▼51.62 | 156.42 ▲2.04 |
Media Library /wp-admin/upload.php | 1,796 ▲98 | 5.61 ▲0.08 | 151.87 ▲8.13 | 200.05 ▲18.35 |
System /wp-admin/admin.php?page=woorewards.system | 1,681 | 5.99 | 96.08 | 136.95 |
MyRewards /wp-admin/admin.php?page=woorewards | 1,886 | 6.34 | 95.38 | 116.28 |
Features /wp-admin/admin.php?page=woorewards.settings | 2,175 | 6.82 | 108.19 | 115.26 |
Appearance /wp-admin/admin.php?page=woorewards.appearance | 3,529 | 14.63 | 265.24 | 163.47 |
Wizard /wp-admin/admin.php?page=lwswizard-woorewards | 1,874 | 6.20 | 86.25 | 123.77 |
Points and Rewards /wp-admin/admin.php?page=woorewards.loyalty | 1,622 | 6.12 | 87.89 | 121.41 |
Pro Version /wp-admin/admin.php?page=woorewards-proversion | 1,768 | 6.00 | 81.92 | 100.43 |
Customers /wp-admin/admin.php?page=woorewards.customers | 2,051 | 6.99 | 95.95 | 124.15 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 25% from 4 tests
🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
It is recommended to fix the following
- This plugin cannot be uninstalled
- > Warning in wp-content/plugins/woorewards/uninstall.php+3
include_once(wp-content/plugins/woorewards/modules/woorewards-pro/uninstall.php): failed to open stream: No such file or directory
- This plugin does not fully uninstall, leaving 2 tables in the database
- wp_lws_wr_achieved_log
- wp_lws_wr_historic
- This plugin does not fully uninstall, leaving 13 options in the database
- lws_woorewards_version
- lws_mail_header_wr_new_reward
- lws_woorewards_redirect_to_licence
- lws_mail_title_wr_new_reward
- lws_woorewards_cart_content_side
- lws_mail_woorewards_attribute_headerpic
- woocommerce_enable_coupons
- lws_mail_template_wr_new_reward
- lws_woorewards_install_version
- lws_mail_woorewards_attribute_footer
- ...
Smoke tests 50% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | This is a short smoke test looking for server-side errors
These server-side errors were triggered
- 2 occurences, only the last one shown
- > GET request to /wp-admin/admin.php?page=lwswizard-woorewards
- > request to
- > Notice in wp-config.php+20
Undefined index: REQUEST_METHOD
SRP 50% from 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
The following issues need your attention
- 2× GET requests to PHP files trigger server-side errors or Error 500 responses:
- > PHP Fatal error
Uncaught Error: Class 'LWS\\Adminpanel\\Pages\\Field' not found in wp-content/plugins/woorewards/assets/lws-adminpanel/include/pages/field/themer.php:20
- > PHP Fatal error
Uncaught Error: Class 'LWS\\Adminpanel\\Pages\\Field' not found in wp-content/plugins/woorewards/assets/lws-adminpanel/include/pages/field/stygen.php:25
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
No browser issues were found
Optimizations
Plugin configuration 90% from 29 tests
readme.txt 94% from 16 tests
Don't ignore readme.txt as it is the file that instructs WordPress.org on how to present your plugin to the world
Please fix the following attributes:
- Tags: You are using too many tags: 26 tag instead of maximum 10
woorewards/woorewards.php 85% from 13 tests
The principal PHP file in "MyRewards - Loyalty Points and Rewards Program for WooCommerce" v. 4.9.0 is loaded by WordPress automatically on each request
The following require your attention:
- Requires at least: The required version number did not match the one declared in readme.txt ("5.3" instead of "3.7.0")
- Text Domain: The text domain must be the same as the plugin slug, although optional since WordPress version 4.6
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | There should be no dangerous file extensions present in any WordPress plugin
Success! There were no dangerous files found in this plugin51,617 lines of code in 220 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 120 | 2,863 | 2,725 | 22,076 |
PO File | 11 | 5,730 | 8,670 | 14,629 |
JavaScript | 45 | 2,396 | 2,295 | 11,531 |
CSS | 38 | 442 | 119 | 2,289 |
SVG | 3 | 0 | 0 | 895 |
JSON | 1 | 0 | 0 | 134 |
XML | 2 | 0 | 0 | 63 |
PHP code Passed 2 tests
An short overview of logical lines of code, cyclomatic complexity, and other code metrics
All good! No complexity issues found
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.50 |
Average class complexity | 33.46 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 170.00 |
Average method complexity | 3.76 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 44.00 |
Code structure | ||
---|---|---|
Namespaces | 21 | |
Interfaces | 2 | |
Traits | 0 | |
Classes | 112 | |
▷ Abstract classes | 13 | 11.61% |
▷ Concrete classes | 99 | 88.39% |
▷ Final classes | 1 | 1.01% |
Methods | 1,375 | |
▷ Static methods | 178 | 12.95% |
▷ Public methods | 982 | 71.42% |
▷ Protected methods | 352 | 25.60% |
▷ Private methods | 41 | 2.98% |
Functions | 75 | |
▷ Named functions | 23 | 30.67% |
▷ Anonymous functions | 52 | 69.33% |
Constants | 64 | |
▷ Global constants | 24 | 37.50% |
▷ Class constants | 40 | 62.50% |
▷ Public constants | 40 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
All PNG images should be compressed to minimize bandwidth usage for end users
28 PNG files occupy 0.08MB with 0.02MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/lws-adminpanel/images/lws-favicon.png | 0.53KB | 0.37KB | ▼ 30.71% |
img/sponsorship.png | 1.51KB | 1.38KB | ▼ 8.48% |
img/leveling_system.png | 2.38KB | 1.78KB | ▼ 25.08% |
img/r-wizard.png | 5.38KB | 3.04KB | ▼ 43.48% |
assets/lws-adminpanel/images/damier.png | 0.18KB | 0.12KB | ▼ 33.33% |