Benchmarks
Plugin footprint 40% from 16 tests
Installer 0% from 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
Please fix the following installer errors
- This plugin did not install gracefully
- > Warning in wp-content/plugins/digital-media-combined/includes/module.php+162
include(wp-content/plugins/digital-media-combined/users/languages/en_US.php): failed to open stream: No such file or directory
Server metrics [RAM: ▲0.01MB] [CPU: ▼11.01ms] Passed 4 tests
Analyzing server-side resources used by Social Media Control Centre
Normal server usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.48 ▲0.02 | 46.85 ▲3.69 |
Dashboard /wp-admin | 3.32 ▼0.02 | 60.00 ▼7.30 |
Posts /wp-admin/edit.php | 3.37 ▲0.02 | 46.26 ▼11.41 |
Add New Post /wp-admin/post-new.php | 5.90 ▲0.02 | 86.71 ▼27.02 |
Media Library /wp-admin/upload.php | 3.24 ▲0.02 | 40.30 ▲1.70 |
Server storage [IO: ▲13.38MB] [DB: ▲0.02MB] 67% from 3 tests
A short overview of filesystem and database impact
These are issues you should consider
- There were 1 file (0.00KB) illegally modified outside of "wp-content/plugins/digital-media-combined/" and "wp-content/uploads/"
- (new file) wp-content/logs/newsletter/.empty
Filesystem: 869 new files
Database: 4 new tables, 25 new options
New tables |
---|
wp_newsletter_stats |
wp_newsletter |
wp_newsletter_emails |
wp_newsletter_sent |
New WordPress options |
---|
db_upgraded |
newsletter_logger_secret |
newsletter_users |
newsletter_users_version |
newsletter_main_version |
newsletter_emails |
newsletter_profile |
newsletter_statistics_version |
widget_theysaidso_widget |
newsletter_subscription_version |
... |
Browser metrics Passed 4 tests
Social Media Control Centre: an overview of browser usage
Minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,789 ▲3 | 14.26 ▼0.16 | 1.68 ▼0.37 | 45.15 ▼1.90 |
Dashboard /wp-admin | 2,195 ▲27 | 5.59 ▼0.00 | 88.59 ▼2.77 | 44.08 ▼12.36 |
Posts /wp-admin/edit.php | 2,100 ▼0 | 2.02 ▲0.01 | 34.95 ▲0.11 | 36.06 ▼1.16 |
Add New Post /wp-admin/post-new.php | 1,528 ▼0 | 23.28 ▲0.29 | 677.28 ▼11.87 | 55.23 ▼3.52 |
Media Library /wp-admin/upload.php | 1,397 ▼3 | 4.19 ▲0.03 | 103.32 ▼21.83 | 45.27 ▼3.58 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.02MB] 50% from 4 tests
🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
Please fix the following items
- This plugin does not fully uninstall, leaving 4 tables in the database
- wp_newsletter_emails
- wp_newsletter_sent
- wp_newsletter_stats
- wp_newsletter
- Zombie WordPress options detected upon uninstall: 25 options
- newsletter_logger_secret
- theysaidso_admin_options
- newsletter_main
- newsletter_main_smtp
- widget_recent-posts
- newsletter_lock_version
- widget_theysaidso_widget
- digital-media-combined
- can_compress_scripts
- newsletter_profile
- ...
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 no errors were found, 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
- 13× PHP files perform the task of outputting text when accessed with GET requests (only 10 are shown):
- > /wp-content/plugins/digital-media-combined/emails/themes/default/social_main.php
- > /wp-content/plugins/digital-media-combined/emails/tnp-composer/blocks/content-02-heading.block.php
- > /wp-content/plugins/digital-media-combined/emails/tnp-composer/blocks/content-05-image.block.php
- > /wp-content/plugins/digital-media-combined/users/index.php
- > /wp-content/plugins/digital-media-combined/subscription/email-alternative.php
- > /wp-content/plugins/digital-media-combined/emails/tnp-composer/blocks/footer-02-canspam.block.php
- > /wp-content/plugins/digital-media-combined/emails/tnp-composer/blocks/content-03-text.block.php
- > /wp-content/plugins/digital-media-combined/emails/tnp-composer/blocks/header-01-header.block.php
- > /wp-content/plugins/digital-media-combined/emails/tnp-composer/blocks/footer-01-footer.block.php
- > /wp-content/plugins/digital-media-combined/emails/themes/default/social.php
- 86× PHP files trigger server-side errors or warnings when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit_Framework_TestCase' not found in wp-content/plugins/digital-media-combined/php-graph/tests/FileUpload/FacebookFileTest.php:28
- > PHP Fatal error
Uncaught Error: Class 'Facebook\\Tests\\HttpClients\\AbstractTestHttpClient' not found in wp-content/plugins/digital-media-combined/php-graph/tests/HttpClients/FacebookStreamHttpClientTest.php:29
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit_Framework_TestCase' not found in wp-content/plugins/digital-media-combined/php-graph/tests/Http/RequestBodyMultipartTest.php:29
- > PHP Warning
include(): Failed opening 'WP_PLUGIN_DIR/newsletter/emails/themes/default/social-options.php' for inclusion (include_path='.:/usr/share/php') in wp-content/plugins/digital-media-combined/emails/themes/simple/theme-options.php on line 1
- > PHP Warning
Use of undefined constant DMC_INCLUDES_DIR - assumed 'DMC_INCLUDES_DIR' (this will throw an Error in a future version of PHP) in wp-content/plugins/digital-media-combined/emails/tnp-composer/blocks/content-07-twocols.block.php on line 2
- > PHP Warning
Use of undefined constant DMC_LIST_MAX - assumed 'DMC_LIST_MAX' (this will throw an Error in a future version of PHP) in wp-content/plugins/digital-media-combined/subscription/languages/profile-en_US.php on line 33
- > PHP Warning
include(WP_PLUGIN_DIR/newsletter/emails/themes/default/social-options.php): failed to open stream: No such file or directory in wp-content/plugins/digital-media-combined/emails/themes/simple/theme-options.php on line 1
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit_Framework_TestCase' not found in wp-content/plugins/digital-media-combined/php-graph/tests/Exceptions/FacebookResponseExceptionTest.php:31
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit_Framework_TestCase' not found in wp-content/plugins/digital-media-combined/php-graph/tests/Http/RequestUrlEncodedTest.php:28
- > PHP Notice
Trying to get property 'prefix' of non-object in wp-content/plugins/digital-media-combined/dmc.php on line 53
- > 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)
Everything seems fine, but this is not an exhaustive test
Optimizations
Plugin configuration 90% from 29 tests
readme.txt 88% 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
Please fix the following attributes:
- Tags: Too many tags (94 tag instead of maximum 10); only the first 5 tags are used in your directory listing
- Contributors: Plugin contributors field is missing
digital-media-combined/dmc.php 92% from 13 tests
Analyzing the main PHP file in "Social Media Control Centre" version 1.0.6
You should first fix the following items:
- Main file name: Please rename the main PHP file in this plugin to the plugin slug ("digital-media-combined.php" instead of "dmc.php")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short check of programming languages and file extensions; no executable files are allowed
No dangerous file extensions were detected39,003 lines of code in 659 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 169 | 3,792 | 3,644 | 18,572 |
CSS | 35 | 1,120 | 259 | 9,220 |
JavaScript | 426 | 1,654 | 689 | 6,881 |
SVG | 3 | 1 | 0 | 2,494 |
HTML | 16 | 148 | 13 | 1,363 |
Markdown | 4 | 65 | 0 | 234 |
PO File | 2 | 66 | 135 | 151 |
JSON | 1 | 0 | 0 | 41 |
YAML | 2 | 7 | 0 | 25 |
XML | 1 | 0 | 0 | 22 |
PHP code Passed 2 tests
This is a short overview 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.27 |
Average class complexity | 13.55 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 337.00 |
Average method complexity | 2.63 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 45.00 |
Code structure | ||
---|---|---|
Namespaces | 11 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 78 | |
▷ Abstract classes | 2 | 2.56% |
▷ Concrete classes | 76 | 97.44% |
▷ Final classes | 0 | 0.00% |
Methods | 596 | |
▷ Static methods | 34 | 5.70% |
▷ Public methods | 587 | 98.49% |
▷ Protected methods | 1 | 0.17% |
▷ Private methods | 8 | 1.34% |
Functions | 48 | |
▷ Named functions | 41 | 85.42% |
▷ Anonymous functions | 7 | 14.58% |
Constants | 40 | |
▷ Global constants | 29 | 72.50% |
▷ Class constants | 11 | 27.50% |
▷ Public constants | 11 | 100.00% |
Plugin size 50% from 2 tests
Image compression 50% from 2 tests
Using a strong compression for your PNG files is a great way to speed-up your plugin
98 PNG files occupy 1.43MB with 0.31MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
emails/themes/default/images/facebook.png | 0.65KB | 0.40KB | ▼ 38.91% |
css/jquery-ui/images/ui-icons_cd0a0a_256x240.png | 4.44KB | 4.17KB | ▼ 6.02% |
images/popup/bg.png | 0.30KB | 0.51KB | 0.00% |
images/menu-icon.png | 0.85KB | 0.97KB | 0.00% |
emails/themes/cta-2015/images/vimeo.png | 1.79KB | 0.65KB | ▼ 63.81% |