Benchmarks
Plugin footprint 83% 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: ▲0.03MB] [CPU: ▼13.53ms] Passed 4 tests
Server-side resources used by Easy Product Delivery Date
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.42 ▼0.04 | 28.44 ▼15.04 |
Dashboard /wp-admin | 3.36 ▲0.06 | 43.42 ▼5.73 |
Posts /wp-admin/edit.php | 3.41 ▲0.05 | 44.81 ▼4.81 |
Add New Post /wp-admin/post-new.php | 5.96 ▲0.07 | 82.51 ▼28.53 |
Media Library /wp-admin/upload.php | 3.28 ▲0.05 | 35.77 ▲3.14 |
Server storage [IO: ▲2.69MB] [DB: ▲0.00MB] Passed 3 tests
How much does this plugin use your filesystem and database?
There were no storage issued detected upon installing this plugin
Filesystem: 1,037 new files
Database: no new tables, 7 new options
New WordPress options |
---|
widget_recent-comments |
theysaidso_admin_options |
db_upgraded |
widget_theysaidso_widget |
woopdd_is_installed |
can_compress_scripts |
widget_recent-posts |
Browser metrics Passed 4 tests
This is an overview of browser requirements for Easy Product Delivery Date
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,481 ▼290 | 13.56 ▼0.99 | 0.63 ▼1.44 | 18.75 ▼24.44 |
Dashboard /wp-admin | 2,222 ▲34 | 4.85 ▼0.04 | 109.16 ▲6.93 | 38.24 ▼3.89 |
Posts /wp-admin/edit.php | 2,105 ▲13 | 2.01 ▼0.01 | 39.17 ▼0.99 | 34.17 ▼2.21 |
Add New Post /wp-admin/post-new.php | 1,546 ▲18 | 23.28 ▼0.11 | 672.27 ▼2.00 | 72.69 ▼3.29 |
Media Library /wp-admin/upload.php | 1,407 ▲22 | 4.18 ▼0.01 | 96.01 ▼6.06 | 46.39 ▼1.85 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
The following items require your attention
- Zombie WordPress options detected upon uninstall: 7 options
- can_compress_scripts
- widget_theysaidso_widget
- db_upgraded
- theysaidso_admin_options
- widget_recent-posts
- widget_recent-comments
- woopdd_is_installed
Smoke tests 50% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | This is a shallow check for server-side errors
Even though no errors were found, this is by no means an exhaustive test
SRP 0% 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
Please take a closer look at the following
- 1× PHP files perform the task of outputting text when accessed with GET requests:
- > /wp-content/plugins/easy-product-delivery-date/vendor/symfony/translation/Resources/bin/translation-status.php
- 102× PHP files trigger server errors when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Interface 'Symfony\\Component\\Translation\\Exception\\ExceptionInterface' not found in wp-content/plugins/easy-product-delivery-date/vendor/symfony/translation/Exception/LogicException.php:19
- > PHP Fatal error
Uncaught Error: Class 'Symfony\\Component\\Translation\\Dumper\\FileDumper' not found in wp-content/plugins/easy-product-delivery-date/vendor/symfony/translation/Dumper/CsvFileDumper.php:21
- > PHP Fatal error
Uncaught Error: Interface 'Symfony\\Component\\Translation\\Loader\\LoaderInterface' not found in wp-content/plugins/easy-product-delivery-date/vendor/symfony/translation/Loader/ArrayLoader.php:21
- > PHP Fatal error
Uncaught Error: Class 'Symfony\\Component\\Translation\\Loader\\FileLoader' not found in wp-content/plugins/easy-product-delivery-date/vendor/symfony/translation/Loader/CsvFileLoader.php:21
- > PHP Fatal error
Uncaught Error: Class 'Doctrine\\DBAL\\Types\\VarDateTimeImmutableType' not found in wp-content/plugins/easy-product-delivery-date/vendor/nesbot/carbon/src/Carbon/Doctrine/DateTimeImmutableType.php:12
- > PHP Fatal error
Uncaught Error: Interface 'Symfony\\Contracts\\Translation\\TranslatorInterface' not found in wp-content/plugins/easy-product-delivery-date/vendor/symfony/translation/DataCollectorTranslator.php:22
- > PHP Fatal error
Uncaught Error: Interface 'Symfony\\Component\\Translation\\Exception\\ExceptionInterface' not found in wp-content/plugins/easy-product-delivery-date/vendor/symfony/translation/Exception/InvalidArgumentException.php:19
- > PHP Fatal error
Uncaught Error: Interface 'Carbon\\Exceptions\\InvalidArgumentException' not found in wp-content/plugins/easy-product-delivery-date/vendor/nesbot/carbon/src/Carbon/Exceptions/NotACarbonClassException.php:17
- > PHP Fatal error
Uncaught Error: Class 'Symfony\\Component\\Translation\\Loader\\FileLoader' not found in wp-content/plugins/easy-product-delivery-date/vendor/symfony/translation/Loader/IniFileLoader.php:19
- > PHP Fatal error
Uncaught Error: Interface 'Carbon\\Exceptions\\Exception' not found in wp-content/plugins/easy-product-delivery-date/vendor/nesbot/carbon/src/Carbon/Exceptions/RuntimeException.php:13
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
Everything seems fine, but this is not an exhaustive test
Optimizations
Plugin configuration 96% from 29 tests
readme.txt Passed 16 tests
It's important to format your readme.txt file correctly as it is parsed for the public listing of your plugin
6 plugin tags: shipping delivery date, delivery date, delivery date time, shipping date, easy product delivery...
easy-product-delivery-date/easy-product-delivery-date.php 92% from 13 tests
Analyzing the main PHP file in "Easy Product Delivery Date" version 1.0.0
Please make the necessary changes and fix the following:
- Description: If Twitter did it, so should we! Keep the description under 140 characters (currently 173 characters long)
Code Analysis 3% from 3 tests
File types 0% from 1 test
🔸 Test weight: 35 | Executable files are not allowed as they can serve as attack vectors
Please fix the following items
- Even if your plugin relies on executable files (for example a companion app), never distribute executable files with your plugin
- .bat - Batch File in Windows
- ☣ wp-content/plugins/easy-product-delivery-date/vendor/bin/carbon.bat
- ☣ wp-content/plugins/easy-product-delivery-date/vendor/nesbot/carbon/bin/carbon.bat
- .bat - Batch File in Windows
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 802 | 5,850 | 23,874 | 33,234 |
XSD | 3 | 92 | 48 | 2,803 |
JSON | 7 | 0 | 0 | 766 |
Markdown | 8 | 149 | 0 | 379 |
CSS | 3 | 1 | 12 | 71 |
JavaScript | 3 | 7 | 16 | 58 |
XML | 1 | 0 | 0 | 46 |
Bourne Shell | 1 | 3 | 1 | 10 |
DOS Batch | 2 | 0 | 0 | 8 |
PHP code 50% from 2 tests
This plugin's cyclomatic complexity and code structure detailed below
Please tend to the following items
- Method cyclomatic complexity has to be reduced to less than 100 (currently 139)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.45 |
Average class complexity | 14.99 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 293.00 |
Average method complexity | 2.90 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 139.00 |
Code structure | ||
---|---|---|
Namespaces | 30 | |
Interfaces | 23 | |
Traits | 24 | |
Classes | 116 | |
▷ Abstract classes | 4 | 3.45% |
▷ Concrete classes | 112 | 96.55% |
▷ Final classes | 6 | 5.36% |
Methods | 1,489 | |
▷ Static methods | 335 | 22.50% |
▷ Public methods | 1,311 | 88.05% |
▷ Protected methods | 98 | 6.58% |
▷ Private methods | 80 | 5.37% |
Functions | 267 | |
▷ Named functions | 61 | 22.85% |
▷ Anonymous functions | 206 | 77.15% |
Constants | 93 | |
▷ Global constants | 8 | 8.60% |
▷ Class constants | 85 | 91.40% |
▷ Public constants | 85 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
It is recommended to compress PNG files in your plugin to minimize bandwidth usage
No PNG images were found in this plugin