Benchmarks
Plugin footprint 65% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | All plugins must install correctly, without throwing any errors, warnings, or notices
This plugin's installer ran successfully
Server metrics [RAM: ▲1.59MB] [CPU: ▲10.25ms] Passed 4 tests
Server-side resources used by Top 10 - WordPress Popular posts by WebberZone
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.33 ▲0.87 | 49.63 ▲11.00 |
Dashboard /wp-admin | 5.24 ▲1.89 | 59.26 ▲0.41 |
Posts /wp-admin/edit.php | 5.24 ▲1.89 | 71.36 ▲23.45 |
Add New Post /wp-admin/post-new.php | 7.76 ▲1.87 | 112.32 ▲19.92 |
Media Library /wp-admin/upload.php | 4.97 ▲1.74 | 47.06 ▲9.66 |
Import/Export /wp-admin/admin.php?page=tptn_exim_page | 4.96 | 42.18 |
Tools /wp-admin/admin.php?page=tptn_tools_page | 5.07 | 44.43 |
Daily Popular Posts /wp-admin/admin.php?page=tptn_popular_posts&orderby=daily_count&order=desc | 5.06 | 45.87 |
Settings /wp-admin/admin.php?page=tptn_options_page | 5.05 | 99.16 |
Popular Posts /wp-admin/admin.php?page=tptn_popular_posts | 5.06 | 45.23 |
Dashboard /wp-admin/admin.php?page=tptn_dashboard | 5.08 | 47.12 |
Server storage [IO: ▲1.08MB] [DB: ▲0.00MB] Passed 3 tests
Input-output and database impact of this plugin
This plugin was installed successfully
Filesystem: 105 new files
Database: 2 new tables, 9 new options
New tables |
---|
wp_top_ten |
wp_top_ten_daily |
New WordPress options |
---|
widget_recent-posts |
can_compress_scripts |
widget_theysaidso_widget |
tptn_settings |
theysaidso_admin_options |
widget_widget_tptn_count |
widget_widget_tptn_pop |
widget_recent-comments |
db_upgraded |
Browser metrics Passed 4 tests
An overview of browser requirements for Top 10 - WordPress Popular posts by WebberZone
This plugin renders optimally with no browser resource issues detected
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,918 ▲171 | 14.36 ▲0.02 | 1.78 ▼0.01 | 44.67 ▲1.40 |
Dashboard /wp-admin | 2,326 ▲149 | 5.65 ▼0.03 | 92.90 ▲3.73 | 45.04 ▲2.33 |
Posts /wp-admin/edit.php | 2,219 ▲116 | 1.98 ▲0.03 | 40.76 ▼1.20 | 37.67 ▲0.26 |
Add New Post /wp-admin/post-new.php | 6,497 ▲4,963 | 27.23 ▲2.05 | 884.58 ▲280.88 | 66.95 ▼4.80 |
Media Library /wp-admin/upload.php | 1,449 ▲46 | 4.29 ▲0.08 | 98.40 ▼5.96 | 44.69 ▼1.20 |
Import/Export /wp-admin/admin.php?page=tptn_exim_page | 1,142 | 2.00 | 23.82 | 32.65 |
Tools /wp-admin/admin.php?page=tptn_tools_page | 1,162 | 2.00 | 31.49 | 31.23 |
Daily Popular Posts /wp-admin/admin.php?page=tptn_popular_posts&orderby=daily_count&order=desc | 1,336 | 2.14 | 35.35 | 28.34 |
Settings /wp-admin/admin.php?page=tptn_options_page | 2,661 | 6.21 | 127.41 | 88.92 |
Popular Posts /wp-admin/admin.php?page=tptn_popular_posts | 1,336 | 2.15 | 34.63 | 31.13 |
Dashboard /wp-admin/admin.php?page=tptn_dashboard | 1,254 | 4.21 | 107.03 | 36.51 |
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
You still need to fix the following
- The plugin did not uninstall successfully, leaving 2 tables in the database
- wp_top_ten
- wp_top_ten_daily
- Zombie WordPress options detected upon uninstall: 6 options
- can_compress_scripts
- theysaidso_admin_options
- widget_recent-comments
- widget_theysaidso_widget
- db_upgraded
- widget_recent-posts
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | This is a shallow check for server-side errors
Even though everything seems fine, this is not an exhaustive test
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
The following issues need your attention
- 4× PHP files trigger server-side errors or warnings when accessed directly:
- > PHP Fatal error
Uncaught Error: Call to undefined function add_filter() in wp-content/plugins/top-10/includes/wz-pluggables.php:36
- > PHP Notice
Undefined variable: daily in wp-content/plugins/top-10/includes/frontend/feed-rss2-popular-posts.php on line 9
- > PHP Fatal error
Uncaught Error: Call to undefined function tptn_get_option() in wp-content/plugins/top-10/includes/frontend/feed-rss2-popular-posts.php:10
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_attr_e() in wp-content/plugins/top-10/includes/admin/settings/sidebar.php:14
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
Everything seems fine on the user side
Optimizations
Plugin configuration 97% from 29 tests
readme.txt 94% from 16 tests
Don't ignore readme.txt as it is the file that instructs WordPress.org on how to present your plugin to the world
These attributes need to be fixed:
- Screenshots: Add an image for screenshot #14 (Top 10 Gutenberg block)
top-10/top-10.php Passed 13 tests
The main PHP file in "Top 10 - WordPress Popular posts by WebberZone" ver. 3.3.3 adds more information about the plugin and also serves as the entry point for this plugin
101 characters long description:
Count daily and total visits per post and display the most popular posts based on the number of views
Code Analysis Passed 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
Everything looks great! No dangerous files found in this plugin10,175 lines of code in 78 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 45 | 1,953 | 4,583 | 7,312 |
PO File | 1 | 406 | 473 | 1,073 |
JavaScript | 23 | 111 | 108 | 946 |
CSS | 6 | 31 | 38 | 695 |
JSON | 1 | 0 | 0 | 74 |
Markdown | 1 | 37 | 0 | 64 |
XML | 1 | 0 | 0 | 11 |
PHP code Passed 2 tests
Analyzing cyclomatic complexity and code structure
Everything seems fine, there were no complexity issues found
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.36 |
Average class complexity | 25.89 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 69.00 |
Average method complexity | 3.82 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 35.00 |
Code structure | ||
---|---|---|
Namespaces | 8 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 35 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 35 | 100.00% |
▷ Final classes | 1 | 2.86% |
Methods | 309 | |
▷ Static methods | 112 | 36.25% |
▷ Public methods | 306 | 99.03% |
▷ Protected methods | 1 | 0.32% |
▷ Private methods | 2 | 0.65% |
Functions | 20 | |
▷ Named functions | 20 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 8 | |
▷ Global constants | 6 | 75.00% |
▷ Class constants | 2 | 25.00% |
▷ Public constants | 2 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
Using a strong compression for your PNG files is a great way to speed-up your plugin
14 PNG files occupy 0.04MB with 0.01MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
includes/admin/css/images/ui-icons_2e83ff_256x240.png | 4.44KB | 4.17KB | ▼ 6.02% |
includes/admin/css/images/ui-bg_highlight-soft_75_cccccc_1x100.png | 0.27KB | 0.18KB | ▼ 35.00% |
includes/admin/css/images/ui-icons_cd0a0a_256x240.png | 4.44KB | 4.17KB | ▼ 6.02% |
includes/admin/images/fb.png | 1.51KB | 1.59KB | 0.00% |
includes/admin/css/images/ui-icons_454545_256x240.png | 6.83KB | 4.17KB | ▼ 38.86% |