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: ▲1.25MB] [CPU: ▲0.36ms] Passed 4 tests
An overview of server-side resources used by Wordpress Notification Builder
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.75 ▲1.28 | 47.73 ▼4.61 |
Dashboard /wp-admin | 4.62 ▲1.27 | 59.99 ▼4.96 |
Posts /wp-admin/edit.php | 4.66 ▲1.30 | 61.78 ▲16.63 |
Add New Post /wp-admin/post-new.php | 7.14 ▲1.25 | 86.94 ▼5.64 |
Media Library /wp-admin/upload.php | 4.45 ▲1.22 | 49.64 ▲16.71 |
Server storage [IO: ▲4.69MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
There were no storage issued detected upon installing this plugin
Filesystem: 458 new files
Database: no new tables, 6 new options
New WordPress options |
---|
widget_recent-posts |
theysaidso_admin_options |
widget_recent-comments |
can_compress_scripts |
db_upgraded |
widget_theysaidso_widget |
Browser metrics Passed 4 tests
This is an overview of browser requirements for Wordpress Notification Builder
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,105 ▲359 | 19.44 ▲5.05 | 6.56 ▲4.66 | 38.77 ▼3.22 |
Dashboard /wp-admin | 2,400 ▲212 | 9.73 ▲4.82 | 210.41 ▲88.96 | 42.87 ▲0.25 |
Posts /wp-admin/edit.php | 2,317 ▲225 | 6.70 ▲4.72 | 119.78 ▲84.12 | 34.51 ▲4.83 |
Add New Post /wp-admin/post-new.php | 1,719 ▲186 | 24.20 ▲0.69 | 701.86 ▲46.38 | 34.89 ▼15.21 |
Media Library /wp-admin/upload.php | 1,444 ▲56 | 7.28 ▲3.07 | 134.05 ▲31.43 | 41.91 ▲0.45 |
WP Notification /wp-admin/crb_carbon_fields_container_wp_notification.php | 26 | 0.44 | 0.13 | 13.05 |
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
Please fix the following items
- This plugin does not fully uninstall, leaving 6 options in the database
- can_compress_scripts
- widget_recent-posts
- 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 | A shallow check that no server-side errors were triggered
Good news, no errors were detected
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
The following issues need your attention
- 1× PHP files output text when accessed directly:
- > /wp-content/plugins/wp-notification-builder/inc/option_fields/vendor/htmlburger/carbon-fields/templates/Exception/incorrect-syntax.php
- 205× 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\\Field\\Field' not found in wp-content/plugins/wp-notification-builder/inc/option_fields/vendor/htmlburger/carbon-fields/core/Field/Date_Field.php:8
- > PHP Fatal error
Uncaught Error: Using $this when not in object context in wp-content/plugins/wp-notification-builder/inc/option_fields/vendor/htmlburger/carbon-fields/templates/Container/post_meta.php:1
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/wp-notification-builder/inc/option_fields/vendor/composer/installers/src/Composer/Installers/DrupalInstaller.php:4
- > PHP Fatal error
Uncaught Error: Class 'Carbon_Fields\\Service\\Service' not found in wp-content/plugins/wp-notification-builder/inc/option_fields/vendor/htmlburger/carbon-fields/core/Service/Legacy_Storage_Service_v_1_5.php:16
- > PHP Fatal error
Uncaught Error: Class 'Carbon_Fields\\Container\\Condition\\Condition' not found in wp-content/plugins/wp-notification-builder/inc/option_fields/vendor/htmlburger/carbon-fields/core/Container/Condition/Blog_ID_Condition.php:8
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/wp-notification-builder/inc/option_fields/vendor/composer/installers/src/Composer/Installers/RedaxoInstaller.php:4
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/wp-notification-builder/inc/option_fields/vendor/composer/installers/src/Composer/Installers/MicroweberInstaller.php:4
- > PHP Fatal error
Uncaught Error: Using $this when not in object context in wp-content/plugins/wp-notification-builder/inc/option_fields/vendor/htmlburger/carbon-fields/templates/Container/comment_meta.php:1
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/wp-notification-builder/inc/option_fields/vendor/composer/installers/src/Composer/Installers/MODXEvoInstaller.php:7
- > PHP Fatal error
Uncaught Error: Class 'Carbon_Fields\\Field\\Field' not found in wp-content/plugins/wp-notification-builder/inc/option_fields/vendor/htmlburger/carbon-fields/core/Field/Complex_Field.php:16
- > PHP Fatal error
User-side errors 0% from 1 test
🔹 Test weight: 20 | This is a shallow check for browser errors
Please take a look at the following user-side issues
- > GET request to /wp-admin/crb_carbon_fields_container_wp_notification.php
- > Network (severe)
wp-admin/crb_carbon_fields_container_wp_notification.php - Failed to load resource: the server responded with a status of 404 (Not Found)
Optimizations
Plugin configuration 90% from 29 tests
readme.txt Passed 16 tests
The readme.txt file is undoubtedly the most important file in your plugin, preparing it for public listing on WordPress.org
5 plugin tags: notification builder, easy notification plugin, wp notification plugin, wordpress notification, wp notification builder
wp-notification-builder/index.php 77% from 13 tests
The main PHP script in "Wordpress Notification Builder" version 1.0 is automatically included on every request by WordPress
Please take the time to fix the following:
- Requires at least: The required version number must match the one declared in readme.txt ("4.9" instead of "3.7")
- Main file name: Even though not officially enforced, the main plugin file should be the same as the plugin slug ("wp-notification-builder.php" instead of "index.php")
- Description: Please keep the plugin description shorter than 140 characters (currently 173 characters long)
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 plugin74,272 lines of code in 435 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
JavaScript | 140 | 15,917 | 28,385 | 59,713 |
PHP | 239 | 2,552 | 6,379 | 10,576 |
PO File | 12 | 1,132 | 1,623 | 2,507 |
JSON | 8 | 0 | 0 | 580 |
CSS | 28 | 289 | 127 | 568 |
Markdown | 5 | 61 | 0 | 279 |
YAML | 2 | 7 | 0 | 26 |
XML | 1 | 2 | 0 | 23 |
PHP code Passed 2 tests
An overview of cyclomatic complexity and code structure
No cyclomatic complexity issues were detected for this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.25 |
Average class complexity | 5.04 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 50.00 |
Average method complexity | 1.98 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 18.00 |
Code structure | ||
---|---|---|
Namespaces | 25 | |
Interfaces | 5 | |
Traits | 0 | |
Classes | 214 | |
▷ Abstract classes | 13 | 6.07% |
▷ Concrete classes | 201 | 93.93% |
▷ Final classes | 1 | 0.50% |
Methods | 920 | |
▷ Static methods | 81 | 8.80% |
▷ Public methods | 731 | 79.46% |
▷ Protected methods | 182 | 19.78% |
▷ Private methods | 7 | 0.76% |
Functions | 95 | |
▷ Named functions | 23 | 24.21% |
▷ Anonymous functions | 72 | 75.79% |
Constants | 32 | |
▷ Global constants | 7 | 21.88% |
▷ Class constants | 25 | 78.12% |
▷ Public constants | 25 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
PNG files should be compressed to save space and minimize bandwidth usage
There were not PNG files found in your plugin