Benchmarks
Plugin footprint 65% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
The plugin installed successfully, without throwing any errors or notices
Server metrics [RAM: ▲0.99MB] [CPU: ▲1.48ms] Passed 4 tests
A check of server-side resources used by Plugin Organizer
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.39 ▲0.92 | 49.78 ▲9.68 |
Dashboard /wp-admin | 4.35 ▲1.04 | 55.07 ▲1.79 |
Posts /wp-admin/edit.php | 4.40 ▲1.04 | 61.96 ▲9.15 |
Add New Post /wp-admin/post-new.php | 6.89 ▲1.00 | 97.97 ▼9.46 |
Media Library /wp-admin/upload.php | 4.20 ▲0.97 | 43.97 ▲4.43 |
Settings /wp-admin/admin.php?page=Plugin_Organizer | 4.27 | 46.57 |
Plugin Filters /wp-admin/edit.php?post_type=plugin_filter | 4.31 | 45.06 |
Group And Order Plugins /wp-admin/admin.php?page=PO_group_and_order_plugins | 4.19 | 43.25 |
Post Type Plugins /wp-admin/admin.php?page=PO_pt_plugins | 4.17 | 46.36 |
Search Plugins /wp-admin/admin.php?page=PO_search_plugins | 4.17 | 42.69 |
Filter Groups /wp-admin/edit-tags.php?taxonomy=filter_group&post_type=plugin_filter | 4.20 | 50.21 |
Global Plugins /wp-admin/admin.php?page=PO_global_plugins | 4.17 | 45.75 |
Server storage [IO: ▲0.32MB] [DB: ▲0.00MB] 67% from 3 tests
Filesystem and database footprint
Just a few items left to fix
- There were 1 file (24.90KB) illegally modified outside of "wp-content/plugins/plugin-organizer/" and "wp-content/uploads/"
- (new file) wp-content/mu-plugins/PluginOrganizerMU.class.php
Filesystem: 22 new files
Database: 1 new table, 16 new options
New tables |
---|
wp_po_plugins |
New WordPress options |
---|
PO_updating_plugin |
PO_version_num |
PO_fuzzy_url_matching |
PO_debug_roles |
PO_custom_post_type_support |
PO_disable_plugins_by_role |
can_compress_scripts |
theysaidso_admin_options |
db_upgraded |
PO_enabled_roles |
... |
Browser metrics Passed 4 tests
Checking browser requirements for Plugin Organizer
This plugin renders optimally with no browser resource issues detected
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,851 ▲90 | 14.25 ▼0.28 | 2.01 ▲0.17 | 45.82 ▼1.95 |
Dashboard /wp-admin | 2,260 ▲83 | 5.73 ▲0.16 | 92.41 ▲2.19 | 42.99 ▼1.70 |
Posts /wp-admin/edit.php | 2,179 ▲79 | 1.97 ▲0.03 | 40.40 ▲4.93 | 34.29 ▼3.70 |
Add New Post /wp-admin/post-new.php | 1,580 ▲47 | 23.20 ▲0.10 | 674.57 ▼14.77 | 60.72 ▲8.30 |
Media Library /wp-admin/upload.php | 1,462 ▲59 | 4.18 ▼0.02 | 95.89 ▼8.56 | 44.93 ▼0.72 |
Settings /wp-admin/admin.php?page=Plugin_Organizer | 1,545 | 3.09 | 53.06 | 32.98 |
Plugin Filters /wp-admin/edit.php?post_type=plugin_filter | 1,180 | 1.98 | 36.07 | 34.80 |
Group And Order Plugins /wp-admin/admin.php?page=PO_group_and_order_plugins | 1,078 | 2.19 | 56.70 | 31.30 |
Post Type Plugins /wp-admin/admin.php?page=PO_pt_plugins | 1,162 | 2.19 | 47.06 | 38.61 |
Search Plugins /wp-admin/admin.php?page=PO_search_plugins | 1,091 | 2.58 | 37.56 | 32.71 |
Filter Groups /wp-admin/edit-tags.php?taxonomy=filter_group&post_type=plugin_filter | 1,332 | 2.12 | 26.71 | 30.22 |
Global Plugins /wp-admin/admin.php?page=PO_global_plugins | 1,055 | 2.57 | 39.52 | 33.67 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 50% from 4 tests
🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
The following items require your attention
- Zombie tables were found after uninstall: 1 table
- wp_po_plugins
- This plugin does not fully uninstall, leaving 8 options in the database
- widget_recent-posts
- widget_recent-comments
- PO_disable_plugins_frontend
- can_compress_scripts
- theysaidso_admin_options
- widget_theysaidso_widget
- PO_disable_plugins_by_role
- db_upgraded
Smoke tests 50% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | This is a shallow check for server-side errors
These errors were triggered by the plugin
- 44 occurences, only the last one shown
- > GET request to /wp-admin/admin.php?page=PO_global_plugins
- > Notice in wp-content/plugins/plugin-organizer/lib/PO_Template.class.php+156
Trying to access array offset on value of type null
SRP 50% 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 fix the following items
- 15× PHP files trigger server errors when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/plugin-organizer/lib/PluginOrganizerMU.class.php:24
- > PHP Fatal error
Uncaught Error: Using $this when not in object context in wp-content/plugins/plugin-organizer/tpl/postMetaBox.php:10
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/plugin-organizer/tpl/settings.php:23
- > PHP Fatal error
Uncaught Error: Call to undefined function current_user_can() in wp-content/plugins/plugin-organizer/tpl/search_plugins_js.php:3
- > PHP Fatal error
Uncaught Error: Using $this when not in object context in wp-content/plugins/plugin-organizer/tpl/postMetaBox.php:10
- > PHP Fatal error
Uncaught Error: Call to undefined function current_user_can() in wp-content/plugins/plugin-organizer/tpl/settings_page_js.php:2
- > PHP Fatal error
Uncaught Error: Call to undefined function wp_enqueue_script() in wp-content/plugins/plugin-organizer/tpl/common_js.php:2
- > PHP Fatal error
Uncaught Error: Call to undefined function plugin_basename() in wp-content/plugins/plugin-organizer/plugin-organizer.php:12
- > PHP Fatal error
Uncaught Error: Call to undefined function current_user_can() in wp-content/plugins/plugin-organizer/tpl/global_plugins_js.php:3
- > PHP Fatal error
Uncaught Error: Call to undefined function current_user_can() in wp-content/plugins/plugin-organizer/tpl/pt_plugins_js.php:3
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no browser errors were triggered
Everything seems fine, but this is not an exhaustive test
Optimizations
Plugin configuration 97% from 29 tests
readme.txt 94% from 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
Please fix the following attributes:
- Tags: There are too many tags (12 tag instead of maximum 10)
plugin-organizer/plugin-organizer.php Passed 13 tests
Analyzing the main PHP file in "Plugin Organizer" version 10.1.10
93 characters long description:
A plugin to disable plugins on indivudual pages and change the order that they are loaded in.
Code Analysis 97% from 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short glimpse at programming languages used with this plugin and a check that no dangerous files are present
Success! There were no dangerous files found in this plugin5,247 lines of code in 21 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 18 | 733 | 655 | 4,583 |
CSS | 2 | 129 | 0 | 629 |
JavaScript | 1 | 2 | 1 | 35 |
PHP code 50% from 2 tests
A brief analysis of cyclomatic complexity and code structure for this plugin
It is recommended to fix the following
- Cyclomatic complexity of methods should be reduced to less than 100 (currently 169)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.53 |
Average class complexity | 216.25 |
▷ Minimum class complexity | 72.00 |
▷ Maximum class complexity | 388.00 |
Average method complexity | 8.49 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 169.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 4 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 4 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 115 | |
▷ Static methods | 0 | 0.00% |
▷ Public methods | 115 | 100.00% |
▷ Protected methods | 0 | 0.00% |
▷ Private methods | 0 | 0.00% |
Functions | 1 | |
▷ Named functions | 1 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 0 | |
▷ Global constants | 0 | 0.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
No PNG images were found in this plugin