Benchmarks
Plugin footprint 65% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | It is important to correctly install your plugin, without throwing errors or notices
This plugin's installer ran successfully
Server metrics [RAM: ▲0.32MB] [CPU: ▼3.05ms] Passed 4 tests
Server-side resources used by CommentLuv
Normal server usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.79 ▲0.33 | 39.00 ▼3.14 |
Dashboard /wp-admin | 3.62 ▲0.32 | 46.61 ▼5.03 |
Posts /wp-admin/edit.php | 3.73 ▲0.38 | 47.30 ▼1.31 |
Add New Post /wp-admin/post-new.php | 6.20 ▲0.32 | 100.25 ▼2.72 |
Media Library /wp-admin/upload.php | 3.54 ▲0.32 | 35.84 ▲2.76 |
CommentLuv /wp-admin/options-general.php?page=commentluv-options | 3.51 | 32.09 |
Server storage [IO: ▲2.37MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
This plugin installed successfully
Filesystem: 146 new files
Database: no new tables, 8 new options
New WordPress options |
---|
cl_version |
widget_recent-posts |
widget_theysaidso_widget |
db_upgraded |
theysaidso_admin_options |
commentluv_options |
can_compress_scripts |
widget_recent-comments |
Browser metrics Passed 4 tests
CommentLuv: an overview of browser usage
Normal browser usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,919 ▲173 | 13.61 ▼0.75 | 9.60 ▲7.82 | 39.90 ▼4.84 |
Dashboard /wp-admin | 2,213 ▲25 | 4.83 ▼1.07 | 107.32 ▼6.85 | 42.48 ▼4.45 |
Posts /wp-admin/edit.php | 2,093 ▲4 | 2.01 ▼0.02 | 39.22 ▼2.47 | 34.53 ▼0.06 |
Add New Post /wp-admin/post-new.php | 1,519 ▲5 | 17.50 ▲0.07 | 647.87 ▼67.54 | 54.78 ▼9.90 |
Media Library /wp-admin/upload.php | 1,392 ▲4 | 4.17 ▼0.04 | 95.68 ▼14.78 | 40.41 ▼3.12 |
CommentLuv /wp-admin/options-general.php?page=commentluv-options | 1,614 | 2.36 | 27.92 | 49.41 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 50% from 4 tests
🔸 Tests weight: 35 | The uninstall procedure must remove all plugin files and extra database tables
You still need to fix the following
- This plugin did not uninstall without warnings or errors
- > Warning in wp-includes/class-wp-hook.php+310
call_user_func_array() expects parameter 1 to be a valid callback, class 'commentluv' does not have a method 'deactivation'
- Zombie WordPress options detected upon uninstall: 8 options
- theysaidso_admin_options
- db_upgraded
- cl_version
- commentluv_options
- widget_theysaidso_widget
- widget_recent-posts
- widget_recent-comments
- can_compress_scripts
Smoke tests 50% 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)
Good news, no errors were detected
SRP 0% 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 items
- 6× PHP files output non-empty strings when accessed directly via GET requests:
- > /wp-content/plugins/commentluv/videos/operationalsettings.php
- > /wp-content/plugins/commentluv/videos/messagessettings.php
- > /wp-content/plugins/commentluv/videos/technicalsettings.php
- > /wp-content/plugins/commentluv/videos/appearancesettings.php
- > /wp-content/plugins/commentluv/videos/starthere.php
- > /wp-content/plugins/commentluv/videos/primarysettings.php
- 9× PHP files trigger errors when accessed directly with GET requests:
- > PHP Fatal error
Uncaught Error: Interface 'SimpleCluvPie_Cache_Base' not found in wp-content/plugins/commentluv/libs/SimpleCluvPie/library/SimpleCluvPie/Cache/DB.php:50
- > PHP Fatal error
Uncaught Error: Interface 'SimpleCluvPie_Cache_Base' not found in wp-content/plugins/commentluv/libs/SimpleCluvPie/library/SimpleCluvPie/Cache/Memcached.php:58
- > PHP Fatal error
Uncaught Error: Class 'SimpleCluvPie' not found in wp-content/plugins/commentluv/libs/SimpleCluvPie/library/SimpleCluvPie/Core.php:53
- > PHP Fatal error
Uncaught Error: Interface 'SimpleCluvPie_Cache_Base' not found in wp-content/plugins/commentluv/libs/SimpleCluvPie/library/SimpleCluvPie/Cache/Memcache.php:57
- > PHP Fatal error
Uncaught Error: Interface 'SimpleCluvPie_Cache_Base' not found in wp-content/plugins/commentluv/libs/SimpleCluvPie/library/SimpleCluvPie/Cache/Redis.php:27
- > PHP Fatal error
Uncaught Error: Class 'SimpleCluvPie_Cache_DB' not found in wp-content/plugins/commentluv/libs/SimpleCluvPie/library/SimpleCluvPie/Cache/MySQL.php:56
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/commentluv/commentluv.php:1149
- > PHP Fatal error
Uncaught Error: Interface 'SimpleCluvPie_Cache_Base' not found in wp-content/plugins/commentluv/libs/SimpleCluvPie/library/SimpleCluvPie/Cache/File.php:50
- > PHP Fatal error
Uncaught Error: Class 'SimpleCluvPie_Misc' not found in wp-content/plugins/commentluv/libs/SimpleCluvPie/library/SimpleCluvPie.php:59
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | Just a short smoke test targeting errors on the browser (console and network errors and warnings)
There were no browser issues found
Optimizations
Plugin configuration 93% from 29 tests
readme.txt 94% from 16 tests
Perhaps the most important file in your plugin readme.txt gets parsed in order to generate the public listing of your plugin
These attributes need to be fixed:
- Screenshots: Add images for these screenshots: #1 (settings page), #2 (in use), #3 (comments admin), #4 (edit post comments)
commentluv/commentluv.php 92% from 13 tests
Analyzing the main PHP file in "CommentLuv" version 3.0.4
It is important to fix the following:
- Description: If Twitter did it, so should we! Keep the description under 140 characters (currently 150 characters long)
Code Analysis 97% from 3 tests
File types Passed 1 test
🔸 Test weight: 35 | This is a short overview of programming languages used in this plugin, detecting executable files
No dangerous file extensions were detected25,066 lines of code in 79 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 44 | 1,676 | 6,407 | 15,257 |
PO File | 31 | 4,238 | 4,618 | 9,306 |
JavaScript | 3 | 41 | 65 | 331 |
CSS | 1 | 33 | 11 | 172 |
PHP code 50% from 2 tests
A short review of cyclomatic complexity and code structure
Please tend to the following items
- Method cyclomatic complexity should be reduced to less than 100 (currently 808)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.66 |
Average class complexity | 85.69 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 947.00 |
Average method complexity | 7.56 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 808.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 1 | |
Traits | 0 | |
Classes | 38 | |
▷ Abstract classes | 1 | 2.63% |
▷ Concrete classes | 37 | 97.37% |
▷ Final classes | 0 | 0.00% |
Methods | 508 | |
▷ Static methods | 47 | 9.25% |
▷ Public methods | 470 | 92.52% |
▷ Protected methods | 31 | 6.10% |
▷ Private methods | 7 | 1.38% |
Functions | 1 | |
▷ Named functions | 1 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 75 | |
▷ Global constants | 73 | 97.33% |
▷ Class constants | 2 | 2.67% |
▷ Public constants | 2 | 100.00% |
Plugin size 50% from 2 tests
Image compression 50% from 2 tests
It is recommended to compress PNG files in your plugin to minimize bandwidth usage
19 PNG files occupy 0.65MB with 0.22MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
images/playbuttonsmall.png | 1.89KB | 1.42KB | ▼ 24.96% |
images/cl_bar_t18_s.png | 4.93KB | 3.35KB | ▼ 32.01% |
images/linkedin.png | 0.64KB | 0.77KB | 0.00% |
images/skype.png | 3.51KB | 0.90KB | ▼ 74.26% |
images/facebook.png | 0.25KB | 0.15KB | ▼ 40.70% |