Benchmarks
Plugin footprint 40% from 16 tests
Installer 0% from 1 test
🔺 Critical test (weight: 50) | It is important to correctly install your plugin, without throwing errors or notices
You still need to fix the following installer errors
- Install procedure validation failed for this plugin
- > Notice in wp-content/plugins/addthis-follow/backend/AddThisPlugin.php+203
Undefined index: cms_version
Server metrics [RAM: ▲1.18MB] [CPU: ▼287.44ms] Passed 4 tests
Analyzing server-side resources used by WordPress Follow Buttons Plugin – AddThis
Normal server usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.67 ▲1.15 | 66.08 ▲10.75 |
Dashboard /wp-admin | 4.61 ▲1.20 | 47.01 ▲8.70 |
Posts /wp-admin/edit.php | 4.83 ▲1.19 | 48.56 ▲4.77 |
Add New Post /wp-admin/post-new.php | 8.13 ▲1.16 | 114.25 ▼1,165.48 |
Media Library /wp-admin/upload.php | 4.55 ▲1.26 | 32.89 ▲2.25 |
Follow Buttons /wp-admin/admin.php?page=addthis_follow_buttons | 4.47 | 33.71 |
Advanced Settings /wp-admin/admin.php?page=addthis_advanced_settings | 4.47 | 33.08 |
Home /wp-admin/admin.php?page=addthis_registration | 4.47 | 32.03 |
Server storage [IO: ▲3.54MB] [DB: ▲0.00MB] Passed 3 tests
Analyzing filesystem and database footprints of this plugin
There were no storage issued detected upon installing this plugin
Filesystem: 321 new files
Database: no new tables, 5 new options
New WordPress options |
---|
addthis_recommended_content_settings |
widget_addthis_tool_by_class_name_widget |
addthis_shared_settings |
widget_addthis_global_options_widget |
addthis_follow_buttons_settings |
Browser metrics Passed 4 tests
Checking browser requirements for WordPress Follow Buttons Plugin – AddThis
This plugin renders optimally with no browser resource issues detected
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,873 ▲131 | 18.44 ▲2.44 | 78.64 ▲71.61 | 3.06 ▲0.59 |
Dashboard /wp-admin | 2,919 ▲58 | 6.15 ▼0.05 | 118.25 ▼18.60 | 183.53 ▲15.21 |
Posts /wp-admin/edit.php | 2,732 ▲41 | 3.25 ▲0.01 | 64.61 ▼1.56 | 142.85 ▼0.95 |
Add New Post /wp-admin/post-new.php | 1,736 ▲76 | 16.63 ▲0.30 | 424.54 ▲22.58 | 208.08 ▲55.22 |
Media Library /wp-admin/upload.php | 1,738 ▲40 | 5.74 ▲0.25 | 125.16 ▼22.86 | 213.45 ▲21.40 |
Follow Buttons /wp-admin/admin.php?page=addthis_follow_buttons | 16,276 | 13.92 | 749.62 | 167.97 |
Advanced Settings /wp-admin/admin.php?page=addthis_advanced_settings | 7,771 | 12.36 | 423.57 | 212.54 |
Home /wp-admin/admin.php?page=addthis_registration | 4,884 | 8.25 | 573.70 | 180.80 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 50% 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
- Uninstall procedure had uncaught errors
- > Notice in wp-content/plugins/addthis-follow/backend/AddThisPlugin.php+237
Undefined index: cms_version
- This plugin did not uninstall successfully, leaving 5 options in the database
- widget_addthis_global_options_widget
- widget_addthis_tool_by_class_name_widget
- addthis_follow_buttons_settings
- addthis_recommended_content_settings
- addthis_shared_settings
Smoke tests 50% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | This is a short smoke test looking for server-side errors
Even though everything seems fine, this is not an exhaustive test
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
Almost there! Just fix the following items
- 29× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Call to undefined function is_admin() in wp-content/plugins/addthis-follow/backend/AddThisAdminUtilities.php:63
- > PHP Fatal error
Uncaught Error: Call to undefined function is_admin() in wp-content/plugins/addthis-follow/backend/AddThisAdminUtilities.php:63
- > PHP Fatal error
Uncaught Error: Call to undefined function is_admin() in wp-content/plugins/addthis-follow/backend/AddThisAdminUtilities.php:63
- > PHP Fatal error
Uncaught Error: Call to undefined function is_admin() in wp-content/plugins/addthis-follow/backend/AddThisAdminUtilities.php:63
- > PHP Fatal error
Uncaught Error: Call to undefined function is_admin() in wp-content/plugins/addthis-follow/backend/AddThisAdminUtilities.php:63
- > PHP Fatal error
Uncaught Error: Call to undefined function is_admin() in wp-content/plugins/addthis-follow/backend/AddThisAdminUtilities.php:63
- > PHP Fatal error
Uncaught Error: Call to undefined function is_admin() in wp-content/plugins/addthis-follow/backend/AddThisAdminUtilities.php:63
- > PHP Fatal error
Uncaught Error: Call to undefined function is_admin() in wp-content/plugins/addthis-follow/backend/AddThisAdminUtilities.php:63
- > PHP Fatal error
Uncaught Error: Call to undefined function is_admin() in wp-content/plugins/addthis-follow/backend/AddThisAdminUtilities.php:63
- > PHP Fatal error
Uncaught Error: Call to undefined function is_admin() in wp-content/plugins/addthis-follow/backend/AddThisAdminUtilities.php:63
- > PHP Fatal error
User-side errors 0% from 1 test
🔹 Test weight: 20 | This is a shallow check for browser errors
These are user-side errors you should fix
- > GET request to /wp-admin/admin.php?page=addthis_registration
- > Network (severe)
https://www.addthis.com/darkseid/plugins/wpf/v/4.2.6/site/ - Failed to load resource: the server responded with a status of 404 ()
Optimizations
Plugin configuration 90% from 29 tests
readme.txt 94% from 16 tests
The readme.txt file describes your plugin functionality and requirements and it is parsed to prepare the your plugin's listing
Attributes that need to be fixed:
- Screenshots: Add descriptions for screenshots #1, #2, #3, #4, #5, #6 in addthis-follow/assets to your readme.txt
addthis-follow/addthis-follow.php 85% from 13 tests
The main PHP file in "WordPress Follow Buttons Plugin – AddThis" ver. 4.2.6 adds more information about the plugin and also serves as the entry point for this plugin
You should first fix the following items:
- Text Domain: Since WordPress version 4.6 the text domain is optional; if specified, it must be the same as the plugin slug
- Description: The description should be shorter than 140 characters (currently 462 characters long)
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | Executable files are considered dangerous and should not be included with any WordPress plugin
No dangerous file extensions were detected27,666 lines of code in 264 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
JavaScript | 87 | 922 | 1,195 | 8,754 |
PHP | 32 | 1,159 | 3,348 | 6,286 |
HTML | 109 | 535 | 106 | 6,192 |
PO File | 2 | 704 | 1,031 | 2,671 |
CSS | 17 | 280 | 289 | 1,648 |
JSON | 4 | 0 | 0 | 1,298 |
SVG | 8 | 12 | 0 | 392 |
Markdown | 3 | 111 | 0 | 352 |
XML | 2 | 8 | 1 | 73 |
PHP code Passed 2 tests
An short overview of logical lines of code, cyclomatic complexity, and other code metrics
No cyclomatic complexity issues were detected for this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.45 |
Average class complexity | 35.20 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 131.00 |
Average method complexity | 4.92 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 64.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 30 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 30 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 262 | |
▷ Static methods | 44 | 16.79% |
▷ Public methods | 218 | 83.21% |
▷ Protected methods | 32 | 12.21% |
▷ Private methods | 12 | 4.58% |
Functions | 2 | |
▷ Named functions | 2 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 21 | |
▷ Global constants | 0 | 0.00% |
▷ Class constants | 21 | 100.00% |
▷ Public constants | 21 | 100.00% |
Plugin size 0% from 2 tests
Image compression 0% from 2 tests
PNG files should be compressed to save space and minimize bandwidth usage
43 PNG files occupy 0.49MB with 0.29MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
frontend/src/images/tool-example-smlre.png | 1.26KB | 1.28KB | 0.00% |
(invalid) frontend/src/images/tool-thumb-sharing-image.png | 27.58KB | 0.00KB | ▼ 100.00% |
frontend/src/images/icon-search.png | 17.97KB | 0.47KB | ▼ 97.36% |
frontend/src/images/audience-targeting-icon.png | 3.94KB | 1.59KB | ▼ 59.72% |
frontend/src/images/tool-example-wnm.png | 4.60KB | 2.75KB | ▼ 40.22% |