Benchmarks
Plugin footprint 23% from 16 tests
Installer 0% from 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
You still need to fix the following installer errors
- Install procedure had errors
- > Error in wp-content/plugins/repeat-order-for-woocommerce/repeat-order-for-woocommerce.php+442
Uncaught Error: Call to undefined function wc_get_order_statuses() in wp-content/plugins/repeat-order-for-woocommerce/repeat-order-for-woocommerce.php:442
Stack trace:
#0 wp-includes/class-wp-hook.php(310): RepeatOrderForWoocommerce::install()
#1 wp-includes/class-wp-hook.php(334): WP_Hook->apply_filters()
#2 wp-includes/plugin.php(517): WP_Hook->do_action()
#3 wp-admin/includes/plugin.php(693): do_action()
Server metrics [RAM: ▼0.01MB] [CPU: ▼8.31ms] Passed 4 tests
This is a short check of server-side resources used by Repeat Order for WooCommerce
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.47 ▲0.01 | 35.04 ▼13.91 |
Dashboard /wp-admin | 3.32 ▼0.03 | 45.95 ▼20.95 |
Posts /wp-admin/edit.php | 3.37 ▲0.00 | 48.80 ▲1.50 |
Add New Post /wp-admin/post-new.php | 5.90 ▲0.00 | 92.96 ▲0.11 |
Media Library /wp-admin/upload.php | 3.24 ▲0.00 | 44.47 ▲13.29 |
Server storage [IO: ▲0.05MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
This plugin was installed successfully
Filesystem: 6 new files
Database: no new tables, 12 new options
New WordPress options |
---|
prro_create_order_note |
can_compress_scripts |
prro_show_reorder_in_email |
prro_show_user_reorder_list |
prro_cart_notice |
widget_recent-posts |
db_upgraded |
widget_recent-comments |
prro_show_repeat_order_on_order_list |
prro_reactivate_action |
... |
Browser metrics Passed 4 tests
A check of browser resources used by Repeat Order for WooCommerce
This plugin has a minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,790 ▲43 | 14.34 ▲0.15 | 1.70 ▼0.05 | 36.27 ▼10.99 |
Dashboard /wp-admin | 2,198 ▲21 | 5.60 ▼0.07 | 95.16 ▲10.14 | 42.28 ▲0.20 |
Posts /wp-admin/edit.php | 2,100 ▼0 | 1.96 ▼0.01 | 38.94 ▲1.65 | 37.37 ▲3.21 |
Add New Post /wp-admin/post-new.php | 1,526 ▼0 | 23.43 ▲2.45 | 679.94 ▲61.08 | 52.86 ▼2.89 |
Media Library /wp-admin/upload.php | 1,397 ▲3 | 4.14 ▼0.02 | 124.20 ▲30.05 | 54.58 ▲12.09 |
Uninstaller [IO: ▲0.05MB] [DB: ▲0.00MB] 25% from 4 tests
🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
You still need to fix the following
- The plugin did not uninstall gracefully
- > Error in wp-content/plugins/repeat-order-for-woocommerce/repeat-order-for-woocommerce.php+469
Uncaught Error: Call to undefined function wc_get_order_statuses() in wp-content/plugins/repeat-order-for-woocommerce/repeat-order-for-woocommerce.php:469
Stack trace:
#0 wp-includes/class-wp-hook.php(310): RepeatOrderForWoocommerce::uninstall()
#1 wp-includes/class-wp-hook.php(334): WP_Hook->apply_filters()
#2 wp-includes/plugin.php(517): WP_Hook->do_action()
#3 wp-admin/includes/plugin.php(1269): do_action()
#4 wp-admin/includes/plugin.php(960): uninstall_plugin() - The plugin did not uninstall successfully, leaving 6 files (0.05MB) in the plugin directory
- (new file) repeat-order-for-woocommerce.php
- (new file) readme.txt
- (new file) languages/repeat-order-for-woocommerce.pot
- (new file) LICENSE
- (new file) images/reorder.png
- (new file) style.css
- Zombie WordPress options were found after uninstall: 8 options
- db_upgraded
- recovery_mode_email_last_sent
- theysaidso_admin_options
- prro_show_reorder_in_email
- can_compress_scripts
- widget_theysaidso_widget
- widget_recent-posts
- widget_recent-comments
Smoke tests Passed 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | Just a short smoke test targeting errors on the server (in the Apache logs)
The smoke test was a success, however most plugin functionality was not tested
SRP Passed 2 tests
🔹 Tests weight: 20 | A shallow check of the single-responsibility principle; PHP files should perform no action - including output of placeholder text - and trigger no errors when accessed directly
Everything seems fine, however this is by no means an exhaustive test
User-side errors Passed 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
No browser errors were detected
Optimizations
Plugin configuration 96% from 29 tests
readme.txt Passed 16 tests
Perhaps the most important file in your plugin readme.txt gets parsed in order to generate the public listing of your plugin
2 plugin tags: woocommerce, order again
repeat-order-for-woocommerce/repeat-order-for-woocommerce.php 92% from 13 tests
The entry point to "Repeat Order for WooCommerce" version 1.3.1 is a PHP file that has certain tags in its header comment area
You should first fix the following items:
- Requires at least: Required version must be the same as the one declared in readme.txt ("4.8" instead of "3.4.0")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | This is an overview of programming languages used in this plugin; dangerous file extensions are not allowed
There were no executable files found in this plugin463 lines of code in 2 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 1 | 59 | 207 | 423 |
CSS | 1 | 4 | 0 | 40 |
PHP code Passed 2 tests
An overview of cyclomatic complexity and code structure
Everything seems fine, there were no complexity issues found
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.38 |
Average class complexity | 56.00 |
▷ Minimum class complexity | 56.00 |
▷ Maximum class complexity | 56.00 |
Average method complexity | 3.00 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 11.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 1 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 1 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 27 | |
▷ Static methods | 5 | 18.52% |
▷ Public methods | 27 | 100.00% |
▷ Protected methods | 0 | 0.00% |
▷ Private methods | 0 | 0.00% |
Functions | 2 | |
▷ Named functions | 0 | 0.00% |
▷ Anonymous functions | 2 | 100.00% |
Constants | 1 | |
▷ Global constants | 1 | 100.00% |
▷ Class constants | 0 | 0.00% |
▷ Public constants | 0 | 0.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
PNG files should be compressed to save space and minimize bandwidth usage
1 PNG file occupies 0.00MB with 0.00MB in potential savings
Potential savings
Compression of 1 random PNG file using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
images/reorder.png | 0.35KB | 0.25KB | ▼ 30.30% |