Benchmarks
Plugin footprint 82% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
Install script ran successfully
Server metrics [RAM: ▲1.28MB] [CPU: ▲20.61ms] Passed 4 tests
Analyzing server-side resources used by Dashi
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.82 ▲1.36 | 65.46 ▲21.49 |
Dashboard /wp-admin | 4.63 ▲1.32 | 82.40 ▲28.23 |
Posts /wp-admin/edit.php | 4.66 ▲1.30 | 71.25 ▲21.30 |
Add New Post /wp-admin/post-new.php | 7.21 ▲1.32 | 107.99 ▲14.06 |
Media Library /wp-admin/upload.php | 4.43 ▲1.20 | 63.71 ▲25.59 |
Page Part /wp-admin/edit.php?post_type=pagepart | 4.52 | 59.14 |
add Page Part /wp-admin/post-new.php?post_type=pagepart | 4.74 | 69.24 |
Dashi Framework /wp-admin/options-general.php?page=dashi_options | 4.52 | 58.79 |
Server storage [IO: ▲0.45MB] [DB: ▲0.01MB] 67% from 3 tests
Filesystem and database footprint
Please try to fix the following items
- You have illegally modified 1 file (0.01KB) outside of "wp-content/plugins/dashi/" and "wp-content/uploads/"
- (new file) wp-content/dashi_uploads/.htaccess
Filesystem: 66 new files
Database: no new tables, 29 new options
New WordPress options |
---|
dashi_utility_pages_are_ok |
dashi_enrich_search_result_page |
dashi_do_environmental_check |
dashi_sitemap_depth_of_page |
widget_recent-comments |
dashi_show_wp_version |
theysaidso_admin_options |
dashi_development_diable_field_cache |
dashi_remove_host_at_upload_file |
dashi_auto_update_theme |
... |
Browser metrics Passed 4 tests
Dashi: an overview of browser usage
Minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,130 ▲369 | 14.00 ▼0.27 | 13.50 ▲11.69 | 32.90 ▼13.17 |
Dashboard /wp-admin | 2,397 ▲217 | 5.71 ▲0.03 | 90.12 ▲0.01 | 45.60 ▼0.16 |
Posts /wp-admin/edit.php | 2,145 ▲42 | 1.99 ▼0.04 | 33.81 ▼11.61 | 36.24 ▼1.46 |
Add New Post /wp-admin/post-new.php | 1,560 ▲32 | 23.20 ▼0.04 | 647.98 ▲2.51 | 57.76 ▲3.41 |
Media Library /wp-admin/upload.php | 1,439 ▲39 | 4.20 ▲0.07 | 109.02 ▼2.21 | 49.17 ▲2.59 |
Page Part /wp-admin/edit.php?post_type=pagepart | 1,182 | 2.16 | 40.00 | 32.44 |
add Page Part /wp-admin/post-new.php?post_type=pagepart | 2,349 | 7.92 | 173.43 | 64.67 |
Dashi Framework /wp-admin/options-general.php?page=dashi_options | 1,081 | 2.00 | 24.51 | 38.82 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.01MB] 75% from 4 tests
🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
Please fix the following items
- This plugin did not uninstall successfully, leaving 29 options in the database
- dashi_development_mode
- dashi_show_csv_export_dashboard
- dashi_alert_acl
- dashi_activate_pagepart
- dashi_show_wp_version
- widget_recent-comments
- dashi_remove_host_at_upload_file
- dashi_alert_fileacl
- dashi_public_form_done_sendmail
- dashi_do_environmental_check
- ...
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
The smoke test was a success, however most plugin functionality was not tested
SRP 50% from 2 tests
🔹 Tests weight: 20 | SRP (Single-Responsibility Principle) - PHP files must act as libraries and never output text or perform any action when accessed directly in a browser
Please fix the following
- 11× GET requests to PHP files have triggered server-side errors or warnings (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Call to undefined function load_plugin_textdomain() in wp-content/plugins/dashi/dashi.php:37
- > PHP Fatal error
Uncaught Error: Class 'Dashi\\Core\\Session' not found in wp-content/plugins/dashi/classes/Posttype/Session.php:4
- > PHP Fatal error
Uncaught Error: Class 'Dashi\\Core\\Posttype\\Base' not found in wp-content/plugins/dashi/posttype/Crawlsearch.php:4
- > PHP Fatal error
Uncaught Error: Class 'Dashi\\Core\\Posttype\\Base' not found in wp-content/plugins/dashi/posttype/Pagepart.php:4
- > PHP Fatal error
Uncaught Error: Call to undefined function get_header() in wp-content/plugins/dashi/templates/base.php:2
- > PHP Fatal error
Uncaught Error: Class 'Dashi\\Core\\Validation' not found in wp-content/plugins/dashi/classes/Posttype/Validation.php:4
- > PHP Fatal error
Uncaught Error: Class 'Dashi\\Core\\Input' not found in wp-content/plugins/dashi/classes/Posttype/Input.php:4
- > PHP Fatal error
Uncaught Error: Call to undefined function get_header() in wp-content/plugins/dashi/templates/search.php:3
- > PHP Fatal error
Uncaught Error: Class 'Dashi\\Core\\Posttype\\Base' not found in wp-content/plugins/dashi/posttype/Editablehelp.php:4
- > PHP Fatal error
Uncaught Error: Class 'Dashi\\Core\\Field' not found in wp-content/plugins/dashi/classes/Posttype/Field.php:4
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a shallow check for browser errors
No browser issues were found
Optimizations
Plugin configuration 96% from 29 tests
readme.txt Passed 16 tests
The readme.txt file is important because it is parsed by WordPress.org for the public listing of your plugin
7 plugin tags: framework, custom field, plugin, custom, meta...
dashi/dashi.php 92% from 13 tests
The principal PHP file in "Dashi" v. 3.0.9 is loaded by WordPress automatically on each request
Please make the necessary changes and fix the following:
- Description: If Twitter did it, so should we! Keep the description under 140 characters (currently 171 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
No dangerous file extensions were detected10,442 lines of code in 63 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 50 | 1,235 | 2,485 | 7,226 |
JavaScript | 7 | 395 | 452 | 2,495 |
PO File | 1 | 226 | 12 | 436 |
CSS | 4 | 45 | 24 | 282 |
Markdown | 1 | 1 | 0 | 3 |
PHP code Passed 2 tests
Analyzing cyclomatic complexity and code structure
This plugin has no cyclomatic complexity issues
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.53 |
Average class complexity | 28.52 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 206.00 |
Average method complexity | 5.55 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 54.00 |
Code structure | ||
---|---|---|
Namespaces | 3 | |
Interfaces | 0 | |
Traits | 3 | |
Classes | 43 | |
▷ Abstract classes | 1 | 2.33% |
▷ Concrete classes | 42 | 97.67% |
▷ Final classes | 0 | 0.00% |
Methods | 284 | |
▷ Static methods | 284 | 100.00% |
▷ Public methods | 210 | 73.94% |
▷ Protected methods | 2 | 0.70% |
▷ Private methods | 72 | 25.35% |
Functions | 57 | |
▷ Named functions | 0 | 0.00% |
▷ Anonymous functions | 57 | 100.00% |
Constants | 3 | |
▷ Global constants | 3 | 100.00% |
▷ Class constants | 0 | 0.00% |
▷ Public constants | 0 | 0.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
1 compressed PNG file occupies 0.01MB
Potential savings
Compression of 1 random PNG file using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/icon-128x128.png | 11.49KB | 10.60KB | ▼ 7.72% |