Benchmarks
Plugin footprint 82% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | All plugins must install correctly, without throwing any errors, warnings, or notices
The plugin installed successfully, without throwing any errors or notices
Server metrics [RAM: ▲1.71MB] [CPU: ▲30.20ms] Passed 4 tests
Analyzing server-side resources used by Breeze - WordPress Cache Plugin
No issues were detected with server-side resource usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.90 ▲1.43 | 51.21 ▲12.71 |
Dashboard /wp-admin | 5.14 ▲1.79 | 86.49 ▲20.76 |
Posts /wp-admin/edit.php | 5.18 ▲1.82 | 86.48 ▲36.28 |
Add New Post /wp-admin/post-new.php | 7.79 ▲1.90 | 139.15 ▲54.30 |
Media Library /wp-admin/upload.php | 5.02 ▲1.79 | 85.10 ▲51.03 |
Breeze /wp-admin/options-general.php?page=breeze | 4.99 | 74.47 |
Server storage [IO: ▲1.63MB] [DB: ▲0.00MB] 67% from 3 tests
Input-output and database impact of this plugin
These are issues you should consider
- Illegal file modification found: 12 files (14.89KB) outside of "wp-content/plugins/breeze/" and "wp-content/uploads/"
- (new file) wp-content/cache/breeze-minification/administrator/index.html
- (new file) wp-content/breeze-config/breeze-config.php
- (new file) wp-content/advanced-cache.php
- (new file) wp-content/cache/breeze-minification/administrator/js/index.html
- (modified) .htaccess
- (new file) wp-content/cache/breeze-minification/administrator/css/index.html
- (modified) wp-config.php
- (new file) wp-content/cache/breeze-minification/.htaccess
- (new file) wp-content/cache/breeze-minification/css/index.html
- (new file) wp-content/cache/breeze-minification/administrator/.htaccess
- ...
Filesystem: 193 new files
Database: no new tables, 15 new options
New WordPress options |
---|
breeze_varnish_cache |
breeze_file_settings |
breeze_heartbeat_settings |
breeze_first_install |
widget_recent-comments |
breeze_cdn_integration |
breeze_advanced_settings_120 |
can_compress_scripts |
db_upgraded |
breeze_preload_settings |
... |
Browser metrics Passed 4 tests
Breeze - WordPress Cache Plugin: an overview of browser usage
Normal browser usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,868 ▲121 | 14.28 ▼0.44 | 2.19 ▲0.39 | 37.84 ▼2.80 |
Dashboard /wp-admin | 2,238 ▲60 | 5.65 ▼0.00 | 89.73 ▼26.07 | 36.32 ▼7.27 |
Posts /wp-admin/edit.php | 2,143 ▲43 | 2.06 ▲0.03 | 42.34 ▲5.90 | 32.21 ▼2.21 |
Add New Post /wp-admin/post-new.php | 1,571 ▲45 | 25.14 ▲1.90 | 620.94 ▼68.08 | 72.67 ▲3.03 |
Media Library /wp-admin/upload.php | 1,443 ▲43 | 4.26 ▲0.04 | 104.82 ▲0.75 | 44.34 ▲1.36 |
Breeze /wp-admin/options-general.php?page=breeze | 1,362 | 2.11 | 46.59 | 79.89 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | It is important to correctly uninstall your plugin, without leaving any traces
You still need to fix the following
- This plugin did not uninstall successfully, leaving 6 options in the database
- widget_recent-posts
- widget_theysaidso_widget
- db_upgraded
- can_compress_scripts
- widget_recent-comments
- theysaidso_admin_options
Smoke tests 50% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
Everything seems fine, however this is by no means an exhaustive test
SRP 0% from 2 tests
🔹 Tests weight: 20 | It is important to ensure that your PHP files perform no action when accessed directly, respecting the single-responsibility principle
Please take a closer look at the following
- 11× PHP files output text when accessed directly (only 10 are shown):
- > /wp-content/plugins/breeze/inc/breeze-admin.php
- > /wp-content/plugins/breeze/inc/functions.php
- > /wp-content/plugins/breeze/inc/cache/purge-varnish.php
- > /wp-content/plugins/breeze/inc/cdn-integration/breeze-cdn-rewrite.php
- > /wp-content/plugins/breeze/inc/cache/purge-per-time.php
- > /wp-content/plugins/breeze/inc/cache/ecommerce-cache.php
- > /wp-content/plugins/breeze/inc/cdn-integration/breeze-cdn-integration.php
- > /wp-content/plugins/breeze/inc/minification/breeze-minify-main.php
- > /wp-content/plugins/breeze/inc/helpers.php
- > /wp-content/plugins/breeze/breeze.php
- 25× 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 add_action() in wp-content/plugins/breeze/inc/plugin-incompatibility/class-breeze-woocs-compatibility.php:12
- > PHP Fatal error
Uncaught Error: Call to undefined function add_action() in wp-content/plugins/breeze/inc/class-breeze-file-permissions.php:240
- > PHP Fatal error
Uncaught Error: Interface 'MatthiasMullie\\PathConverter\\ConverterInterface' not found in wp-content/plugins/breeze/vendor/matthiasmullie/path-converter/src/Converter.php:19
- > PHP Fatal error
Uncaught Error: Class 'MatthiasMullie\\Minify\\Minify' not found in wp-content/plugins/breeze/vendor/matthiasmullie/minify/src/CSS.php:29
- > PHP Fatal error
Uncaught Error: Call to undefined function add_action() in wp-content/plugins/breeze/inc/plugin-incompatibility/breeze-amp-compatibility.php:25
- > PHP Fatal error
Uncaught Error: Call to undefined function is_multisite() in wp-content/plugins/breeze/inc/class-breeze-heartbeat-settings.php:172
- > PHP Warning
include(): Failed opening 'BREEZE_PLUGIN_DIRinc/wp-cli/class-breeze-settings-import-export.php' for inclusion (include_path='.:/usr/share/php') in wp-content/plugins/breeze/inc/wp-cli/class-breeze-wp-cli-core.php on line 4
- > PHP Warning
Use of undefined constant BREEZE_PLUGIN_DIR - assumed 'BREEZE_PLUGIN_DIR' (this will throw an Error in a future version of PHP) in wp-content/plugins/breeze/inc/wp-cli/class-breeze-wp-cli-core.php on line 3
- > PHP Warning
include(): Failed opening 'BREEZE_PLUGIN_DIRinc/wp-cli/class-breeze-cli-helpers.php' for inclusion (include_path='.:/usr/share/php') in wp-content/plugins/breeze/inc/wp-cli/class-breeze-wp-cli-core.php on line 3
- > PHP Warning
Use of undefined constant BREEZE_PLUGIN_DIR - assumed 'BREEZE_PLUGIN_DIR' (this will throw an Error in a future version of PHP) in wp-content/plugins/breeze/inc/wp-cli/class-breeze-wp-cli-core.php on line 4
- > 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 93% 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
Attributes that need to be fixed:
- Tags: There are too many tags (17 tag instead of maximum 10)
breeze/breeze.php 92% from 13 tests
Analyzing the main PHP file in "Breeze - WordPress Cache Plugin" version 2.0.32
Please take the time to fix the following:
- Description: Please keep the plugin description shorter than 140 characters (currently 162 characters long)
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short review of files and their extensions; it is not recommended to include executable files
There were no executable files found in this plugin22,171 lines of code in 114 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 91 | 4,046 | 6,076 | 18,868 |
JavaScript | 4 | 202 | 152 | 1,320 |
CSS | 3 | 69 | 237 | 1,234 |
JSON | 6 | 0 | 0 | 242 |
Markdown | 2 | 114 | 0 | 228 |
PO File | 2 | 58 | 0 | 139 |
XML | 2 | 47 | 78 | 72 |
YAML | 2 | 1 | 1 | 56 |
Dockerfile | 1 | 2 | 0 | 11 |
HTML | 1 | 0 | 0 | 1 |
PHP code Passed 2 tests
A brief analysis of cyclomatic complexity and code structure for this plugin
No cyclomatic complexity issues were detected for this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.50 |
Average class complexity | 48.05 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 272.00 |
Average method complexity | 6.59 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 89.00 |
Code structure | ||
---|---|---|
Namespaces | 8 | |
Interfaces | 1 | |
Traits | 0 | |
Classes | 57 | |
▷ Abstract classes | 4 | 7.02% |
▷ Concrete classes | 53 | 92.98% |
▷ Final classes | 1 | 1.89% |
Methods | 494 | |
▷ Static methods | 97 | 19.64% |
▷ Public methods | 348 | 70.45% |
▷ Protected methods | 78 | 15.79% |
▷ Private methods | 68 | 13.77% |
Functions | 106 | |
▷ Named functions | 65 | 61.32% |
▷ Anonymous functions | 41 | 38.68% |
Constants | 47 | |
▷ Global constants | 31 | 65.96% |
▷ Class constants | 16 | 34.04% |
▷ Public constants | 15 | 93.75% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
All PNG images should be compressed to minimize bandwidth usage for end users
47 PNG files occupy 0.06MB with 0.02MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/images/advanced-active.png | 0.54KB | 0.44KB | ▼ 18.92% |
assets/images/varnish.png | 1.06KB | 0.74KB | ▼ 30.48% |
assets/images/hdr-logo.png | 2.70KB | 2.87KB | 0.00% |
assets/images/clean_optimizer.png | 1.70KB | 0.99KB | ▼ 42.01% |
assets/images/duplicated_term_meta.png | 1.33KB | 0.35KB | ▼ 73.44% |