Benchmarks
Plugin footprint 82% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
This plugin's installer ran successfully
Server metrics [RAM: ▲2.87MB] [CPU: ▲22.25ms] 75% from 4 tests
Analyzing server-side resources used by Post and Page Builder by BoldGrid - Visual Drag and Drop Editor
Please take the time to fix the following items
- RAM: Total memory usage should be kept under 10MB (currently 10.56MB on /wp-admin/post-new.php?post_type=bg_block)
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 9.64 ▲6.18 | 60.17 ▲20.33 |
Dashboard /wp-admin | 5.86 ▲2.55 | 3,272.34 ▲3,221.93 |
Posts /wp-admin/edit.php | 5.51 ▲2.15 | 63.03 ▲14.91 |
Add New Post /wp-admin/post-new.php | 10.59 ▲4.69 | 117.49 ▲27.34 |
Media Library /wp-admin/upload.php | 5.32 ▲2.09 | 60.77 ▲26.40 |
Settings /wp-admin/edit.php?post_type=bg_block&page=bgppb-settings | 5.35 | 49.81 |
Block Library /wp-admin/edit.php?post_type=bg_block | 5.38 | 52.87 |
Add New Block /wp-admin/post-new.php?post_type=bg_block | 10.56 | 101.64 |
Server storage [IO: ▲19.45MB] [DB: ▲0.01MB] Passed 3 tests
Input-output and database impact of this plugin
This plugin installed successfully
Filesystem: 905 new files
Database: no new tables, 13 new options
New WordPress options |
---|
widget_boldgrid_component_page_title |
boldgrid_settings |
widget_boldgrid_component_menu |
boldgrid_editor |
widget_boldgrid_component_site_description |
widget_theysaidso_widget |
widget_recent-posts |
widget_boldgrid_component_site_title |
widget_boldgrid_component_logo |
can_compress_scripts |
... |
Browser metrics Passed 4 tests
Checking browser requirements for Post and Page Builder by BoldGrid - Visual Drag and Drop Editor
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,362 ▲601 | 13.97 ▼0.66 | 14.03 ▲12.32 | 37.52 ▼6.53 |
Dashboard /wp-admin | 2,537 ▲357 | 4.78 ▼0.98 | 87.95 ▼14.13 | 86.88 ▲42.80 |
Posts /wp-admin/edit.php | 2,348 ▲248 | 2.18 ▲0.22 | 38.10 ▲3.32 | 33.86 ▼4.73 |
Add New Post /wp-admin/post-new.php | 7,685 ▲6,154 | 17.80 ▼5.25 | 484.61 ▼196.39 | 186.17 ▲129.33 |
Media Library /wp-admin/upload.php | 1,647 ▲250 | 4.26 ▲0.04 | 97.18 ▲1.63 | 45.19 ▲2.62 |
Settings /wp-admin/edit.php?post_type=bg_block&page=bgppb-settings | 1,624 | 2.55 | 40.33 | 36.51 |
BoldGrid Connect /wp-admin/boldgrid-connect.php | 26 | 0.42 | 0.09 | 10.80 |
Block Library /wp-admin/edit.php?post_type=bg_block | 1,317 | 2.15 | 34.39 | 31.80 |
Add New Block /wp-admin/post-new.php?post_type=bg_block | 6,232 | 14.74 | 492.63 | 130.46 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.01MB] 75% from 4 tests
🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
These items require your attention
- Zombie WordPress options detected upon uninstall: 13 options
- widget_boldgrid_component_site_description
- widget_boldgrid_component_menu
- boldgrid_editor
- widget_boldgrid_component_page_title
- widget_recent-posts
- db_upgraded
- boldgrid_settings
- widget_boldgrid_component_site_title
- widget_theysaidso_widget
- theysaidso_admin_options
- ...
Smoke tests 25% from 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)
Even though everything seems fine, this is not an exhaustive test
SRP 0% from 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
Almost there! Just fix the following items
- 16× PHP files perform the task of outputting text when accessed with GET requests (only 10 are shown):
- > /wp-content/plugins/post-and-page-builder/includes/template/icon.php
- > /wp-content/plugins/post-and-page-builder/includes/template/panel.php
- > /wp-content/plugins/post-and-page-builder/includes/template/tables.php
- > /wp-content/plugins/post-and-page-builder/includes/template/section-dividers.php
- > /wp-content/plugins/post-and-page-builder/includes/template/button.php
- > /wp-content/plugins/post-and-page-builder/includes/template/color.php
- > /wp-content/plugins/post-and-page-builder/includes/template/image-filter.php
- > /wp-content/plugins/post-and-page-builder/includes/template/background-legacy.php
- > /wp-content/plugins/post-and-page-builder/includes/template/generic-controls.php
- > /wp-content/plugins/post-and-page-builder/includes/template/gridblock.php
- 60× GET requests to PHP files have triggered server-side errors or warnings (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'Boldgrid\\Library\\Library\\Ui\\Card' not found in wp-content/plugins/post-and-page-builder/includes/View/Card/Premium.php:25
- > PHP Fatal error
Uncaught Error: Class 'WP_Widget' not found in wp-content/plugins/post-and-page-builder/includes/Widget/Logo.php:23
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_html_e() in wp-content/plugins/post-and-page-builder/vendor/boldgrid/library/src/Library/Views/EnvatoFreeKey.php:4
- > PHP Fatal error
Uncaught Error: Class 'Boldgrid\\Library\\Library\\Ui\\Feature' not found in wp-content/plugins/post-and-page-builder/includes/View/Feature/Boldgrid.php:21
- > PHP Fatal error
Uncaught Error: Call to undefined function the_ID() in wp-content/plugins/post-and-page-builder/includes/template/page/body.php:4
- > PHP Fatal error
Uncaught Error: Class 'WP_UnitTestCase' not found in wp-content/plugins/post-and-page-builder/vendor/boldgrid/library/tests/Library/Util/test-plugin.php:16
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_html_e() in wp-content/plugins/post-and-page-builder/vendor/boldgrid/library/src/Library/Views/ConnectionIssue.php:3
- > PHP Fatal error
Uncaught Error: Call to undefined function get_header() in wp-content/plugins/post-and-page-builder/includes/template/page/base.php:1
- > PHP Fatal error
Uncaught Error: Class 'WP_UnitTestCase' not found in wp-content/plugins/post-and-page-builder/vendor/boldgrid/library/tests/Library/Library/test-rating-prompt.php:23
- > PHP Fatal error
Uncaught Error: Call to undefined function get_post_type() in wp-content/plugins/post-and-page-builder/includes/template/page/entry-footer.php:4
- > PHP Fatal error
User-side errors 0% from 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
Please fix the following browser errors
- > GET request to /wp-admin/boldgrid-connect.php
- > Network (severe)
wp-admin/boldgrid-connect.php - Failed to load resource: the server responded with a status of 404 (Not Found)
- 3 occurences, only the last one shown
- > GET request to /wp-admin/post-new.php?post_type=bg_block
- > Network (severe)
?p=10&bg_preview_page=1&bg_post_id=10 - 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
You should put a lot of thought into formatting readme.txt as it is used by WordPress.org to prepare the public listing of your plugin
6 plugin tags: drag and drop, boldgrid, editor, tinymce, landing page...
post-and-page-builder/post-and-page-builder.php 77% from 13 tests
The main PHP script in "Post and Page Builder by BoldGrid - Visual Drag and Drop Editor" version 1.25.1 is automatically included on every request by WordPress
It is important to fix the following:
- Domain Path: The domain path folder does not exist ("/languages")
- Description: Keep the plugin description shorter than 140 characters (currently 175 characters long)
- Text Domain: The text domain is optional since WordPress version 4.6; if you do specify it, it must be the same as the plugin slug
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | Executable files are not allowed as they can serve as attack vectors
No dangerous file extensions were detected93,178 lines of code in 594 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
JSON | 11 | 25 | 0 | 31,475 |
JavaScript | 164 | 4,631 | 7,771 | 27,716 |
PHP | 187 | 2,990 | 10,210 | 12,793 |
CSS | 34 | 1,964 | 564 | 12,373 |
Sass | 80 | 994 | 74 | 6,094 |
SVG | 81 | 1 | 3 | 1,352 |
HTML | 32 | 0 | 0 | 789 |
PO File | 1 | 80 | 105 | 247 |
Markdown | 1 | 153 | 0 | 232 |
Bourne Shell | 1 | 15 | 7 | 59 |
YAML | 1 | 8 | 11 | 29 |
XML | 1 | 0 | 0 | 19 |
PHP code Passed 2 tests
This is a very shot review of cyclomatic complexity and code structure
This plugin has no cyclomatic complexity issues
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.32 |
Average class complexity | 10.51 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 48.00 |
Average method complexity | 2.47 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 21.00 |
Code structure | ||
---|---|---|
Namespaces | 23 | |
Interfaces | 1 | |
Traits | 0 | |
Classes | 131 | |
▷ Abstract classes | 1 | 0.76% |
▷ Concrete classes | 130 | 99.24% |
▷ Final classes | 0 | 0.00% |
Methods | 834 | |
▷ Static methods | 136 | 16.31% |
▷ Public methods | 769 | 92.21% |
▷ Protected methods | 34 | 4.08% |
▷ Private methods | 31 | 3.72% |
Functions | 33 | |
▷ Named functions | 7 | 21.21% |
▷ Anonymous functions | 26 | 78.79% |
Constants | 9 | |
▷ Global constants | 8 | 88.89% |
▷ Class constants | 1 | 11.11% |
▷ Public constants | 1 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
Often times overlooked, PNG files can occupy unnecessary space in your plugin
270 compressed PNG files occupy 5.64MB
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/image/patterns/subtle-zebra-3d.png | 0.37KB | 0.41KB | 0.00% |
assets/image/patterns/dark-dot.png | 0.08KB | 0.11KB | 0.00% |
assets/image/patterns/knitted-netting.png | 0.19KB | 0.26KB | 0.00% |
assets/image/patterns/light-gray.png | 0.43KB | 0.47KB | 0.00% |
assets/image/patterns/dark-circles.png | 0.14KB | 0.21KB | 0.00% |