Benchmarks
Plugin footprint 82% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | It is important to correctly install your plugin, without throwing errors or notices
Install script ran successfully
Server metrics [RAM: ▲1.36MB] [CPU: ▲1.70ms] Passed 4 tests
This is a short check of server-side resources used by Crowdcue
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 5.55 ▲2.09 | 63.56 ▲13.21 |
Dashboard /wp-admin | 5.40 ▲2.10 | 839.04 ▲789.18 |
Posts /wp-admin/edit.php | 5.43 ▲2.08 | 74.83 ▲22.59 |
Add New Post /wp-admin/post-new.php | 5.17 ▼0.72 | 54.48 ▼49.69 |
Media Library /wp-admin/upload.php | 5.22 ▲1.99 | 59.19 ▲20.67 |
Events /wp-admin/edit.php?post_type=og_events | 5.35 | 56.46 |
Add New /wp-admin/post-new.php?post_type=og_events | 5.41 | 71.20 |
Server storage [IO: ▲27.53MB] [DB: ▲0.00MB] 67% from 3 tests
A short overview of filesystem and database impact
Please fix the following
- The filesystem usage should be lower than 25MB (currently using 27.53MB)
Filesystem: 677 new files
Database: no new tables, 6 new options
New WordPress options |
---|
widget_theysaidso_widget |
widget_recent-comments |
widget_recent-posts |
can_compress_scripts |
theysaidso_admin_options |
db_upgraded |
Browser metrics Passed 4 tests
Checking browser requirements for Crowdcue
This plugin renders optimally with no browser resource issues detected
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,127 ▲381 | 19.33 ▲4.95 | 31.00 ▲29.17 | 40.51 ▼1.08 |
Dashboard /wp-admin | 2,498 ▲310 | 9.12 ▲3.24 | 170.77 ▲66.39 | 42.59 ▼0.91 |
Posts /wp-admin/edit.php | 2,406 ▲314 | 6.27 ▲4.26 | 77.95 ▲32.55 | 34.82 ▼4.64 |
Add New Post /wp-admin/post-new.php | 6,247 ▲4,725 | 22.12 ▼1.09 | 990.78 ▲349.03 | 53.67 ▼10.85 |
Media Library /wp-admin/upload.php | 1,546 ▲155 | 6.66 ▲2.46 | 109.33 ▲9.94 | 47.87 ▲4.12 |
Crowdcue /wp-admin/crb_carbon_fields_container_crowdcue.php | 26 | 0.44 | 0.09 | 15.87 |
Events /wp-admin/edit.php?post_type=og_events | 1,394 | 6.25 | 70.09 | 27.77 |
Add New /wp-admin/post-new.php?post_type=og_events | 1,999 | 7.96 | 125.95 | 34.28 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | The uninstall procedure must remove all plugin files and extra database tables
You still need to fix the following
- Zombie WordPress options detected upon uninstall: 6 options
- widget_recent-posts
- can_compress_scripts
- theysaidso_admin_options
- db_upgraded
- widget_recent-comments
- widget_theysaidso_widget
Smoke tests 25% 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
Almost there! Just fix the following items
- 2× PHP files perform the action of outputting non-empty strings when accessed directly:
- > /wp-content/plugins/crowdcue/crowdcue.php
- > /wp-content/plugins/crowdcue/vendor/htmlburger/carbon-fields/templates/Exception/incorrect-syntax.php
- 112× GET requests to PHP files trigger server-side errors or Error 500 responses (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'Carbon_Fields\\Container\\Condition\\Comparer\\Comparer' not found in wp-content/plugins/crowdcue/vendor/htmlburger/carbon-fields/core/Container/Condition/Comparer/Custom_Comparer.php:7
- > PHP Warning
Invalid argument supplied for foreach() in wp-content/plugins/crowdcue/vendor/htmlburger/carbon-fields/templates/Exception/incorrect-syntax.php on line 35
- > PHP Notice
Undefined variable: plural in wp-content/plugins/crowdcue/vendor/htmlburger/carbon-fields/templates/Exception/incorrect-syntax.php on line 32
- > PHP Fatal error
Uncaught Error: Class 'Carbon_Fields\\Container\\Condition\\Condition' not found in wp-content/plugins/crowdcue/vendor/htmlburger/carbon-fields/core/Container/Condition/Post_Template_Condition.php:10
- > PHP Fatal error
Uncaught Error: Class 'Carbon_Fields\\Container\\Condition\\Comparer\\Comparer' not found in wp-content/plugins/crowdcue/vendor/htmlburger/carbon-fields/core/Container/Condition/Comparer/Any_Contain_Comparer.php:7
- > PHP Fatal error
Uncaught Error: Class 'Carbon_Fields\\Field\\Field' not found in wp-content/plugins/crowdcue/vendor/htmlburger/carbon-fields/core/Field/Separator_Field.php:9
- > PHP Notice
Undefined variable: plural in wp-content/plugins/crowdcue/vendor/htmlburger/carbon-fields/templates/Exception/incorrect-syntax.php on line 40
- > PHP Fatal error
Uncaught Error: Class 'Carbon_Fields\\Field\\Scripts_Field' not found in wp-content/plugins/crowdcue/vendor/htmlburger/carbon-fields/core/Field/Header_Scripts_Field.php:9
- > PHP Fatal error
Uncaught Error: Class 'Carbon_Fields\\Field\\Field' not found in wp-content/plugins/crowdcue/vendor/htmlburger/carbon-fields/core/Field/Checkbox_Field.php:8
- > PHP Fatal error
Uncaught Error: Class 'Carbon_Fields\\Field\\Field' not found in wp-content/plugins/crowdcue/vendor/htmlburger/carbon-fields/core/Field/Association_Field.php:19
- > PHP Fatal error
User-side errors 0% from 1 test
🔹 Test weight: 20 | A shallow check that no browser errors were triggered
Please take a look at the following user-side issues
- > GET request to /wp-admin/crb_carbon_fields_container_crowdcue.php
- > Network (severe)
wp-admin/crb_carbon_fields_container_crowdcue.php - Failed to load resource: the server responded with a status of 404 (Not Found)
Optimizations
Plugin configuration 97% from 29 tests
readme.txt 94% from 16 tests
Perhaps the most important file in your plugin readme.txt gets parsed in order to generate the public listing of your plugin
Attributes that require attention:
- Donate link: Invalid URI ("")
crowdcue/crowdcue.php Passed 13 tests
"Crowdcue" version 1.3.0's primary PHP file adds more information about the plugin and serves as the entry point for WordPress
112 characters long description:
Crowdcue allows you to easily output a beautiful and simple events page without any coding using OccasionGenius.
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 plugin126,712 lines of code in 578 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
JavaScript | 289 | 20,649 | 20,537 | 77,660 |
JSON | 26 | 0 | 0 | 30,648 |
PHP | 148 | 2,870 | 6,957 | 10,494 |
PO File | 26 | 819 | 1,020 | 2,202 |
Sass | 48 | 339 | 0 | 1,769 |
CSS | 10 | 328 | 1,142 | 1,678 |
Markdown | 21 | 788 | 0 | 1,540 |
TypeScript | 7 | 132 | 514 | 692 |
HTML | 2 | 3 | 20 | 21 |
YAML | 1 | 0 | 0 | 8 |
PHP code Passed 2 tests
A short review of cyclomatic complexity and code structure
This plugin has no cyclomatic complexity problems
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.27 |
Average class complexity | 9.56 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 134.00 |
Average method complexity | 2.17 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 21.00 |
Code structure | ||
---|---|---|
Namespaces | 23 | |
Interfaces | 5 | |
Traits | 0 | |
Classes | 123 | |
▷ Abstract classes | 11 | 8.94% |
▷ Concrete classes | 112 | 91.06% |
▷ Final classes | 1 | 0.89% |
Methods | 948 | |
▷ Static methods | 105 | 11.08% |
▷ Public methods | 778 | 82.07% |
▷ Protected methods | 165 | 17.41% |
▷ Private methods | 5 | 0.53% |
Functions | 114 | |
▷ Named functions | 21 | 18.42% |
▷ Anonymous functions | 93 | 81.58% |
Constants | 29 | |
▷ Global constants | 6 | 20.69% |
▷ Class constants | 23 | 79.31% |
▷ Public constants | 23 | 100.00% |
Plugin size 50% from 2 tests
Image compression 50% from 2 tests
Often times overlooked, PNG files can occupy unnecessary space in your plugin
13 PNG files occupy 11.94MB with 5.17MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
public/images/v1_3_0_img_1.png | 1,273.69KB | 324.54KB | ▼ 74.52% |
og-events/public/logo192.png | 5.22KB | 5.57KB | 0.00% |
og-events/build/logo192.png | 5.22KB | 5.57KB | 0.00% |
public/images/v0_9_0_img3.png | 1,113.90KB | 294.70KB | ▼ 73.54% |
public/images/v0_9_0_img2.png | 1,020.24KB | 321.55KB | ▼ 68.48% |