Benchmarks
Plugin footprint 65% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
The plugin installed successfully, without throwing any errors or notices
Server metrics [RAM: ▲1.24MB] [CPU: ▲5.02ms] Passed 4 tests
Analyzing server-side resources used by Creative Mail – Easier WordPress & WooCommerce Email Marketing
Normal server usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.74 ▲1.27 | 48.33 ▲6.34 |
Dashboard /wp-admin | 4.58 ▲1.28 | 53.89 ▲2.08 |
Posts /wp-admin/edit.php | 4.61 ▲1.25 | 56.89 ▲8.74 |
Add New Post /wp-admin/post-new.php | 7.13 ▲1.25 | 88.87 ▲2.92 |
Media Library /wp-admin/upload.php | 4.42 ▲1.19 | 49.47 ▲14.74 |
Creative Mail /wp-admin/admin.php?page=creativemail | 4.39 | 39.96 |
Settings /wp-admin/admin.php?page=creativemail_settings | 4.41 | 46.59 |
Server storage [IO: ▲1.94MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
This plugin installed successfully
Filesystem: 360 new files
Database: 1 new table, 12 new options
New tables |
---|
wp_ce4wp_contacts |
New WordPress options |
---|
can_compress_scripts |
ce4wp_handshake_expiration |
widget_theysaidso_widget |
theysaidso_admin_options |
ce4wp_contacts_db_version |
ce4wp_handshake_token |
db_upgraded |
widget_recent-comments |
widget_recent-posts |
ce4wp_activated |
... |
Browser metrics Passed 4 tests
This is an overview of browser requirements for Creative Mail – Easier WordPress & WooCommerce Email Marketing
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,071 ▲310 | 14.90 ▲0.63 | 5.24 ▲3.44 | 40.06 ▼4.97 |
Dashboard /wp-admin | 2,350 ▲176 | 5.57 ▼0.03 | 105.76 ▲3.77 | 62.58 ▲21.60 |
Posts /wp-admin/edit.php | 2,170 ▲67 | 2.70 ▲0.75 | 53.39 ▲10.18 | 37.19 ▼0.55 |
Add New Post /wp-admin/post-new.php | 6,403 ▲4,864 | 28.81 ▲5.83 | 877.70 ▲209.52 | 35.52 ▼17.02 |
Media Library /wp-admin/upload.php | 1,458 ▲61 | 5.03 ▲0.82 | 103.82 ▲3.44 | 40.15 ▼6.09 |
Creative Mail /wp-admin/admin.php?page=creativemail | 1,069 | 2.45 | 37.58 | 64.65 |
Settings /wp-admin/admin.php?page=creativemail_settings | 1,098 | 2.54 | 35.92 | 35.07 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 50% from 4 tests
🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
Please fix the following items
- Zombie tables detected upon uninstall: 1 table
- wp_ce4wp_contacts
- Zombie WordPress options detected upon uninstall: 10 options
- ce4wp_handshake_expiration
- can_compress_scripts
- ce4wp_handshake_token
- theysaidso_admin_options
- db_upgraded
- ce4wp_instance_uuid
- ce4wp_contacts_db_version
- widget_recent-comments
- widget_recent-posts
- widget_theysaidso_widget
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
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
The following issues need your attention
- 1× PHP files output text when accessed directly:
- > /wp-content/plugins/creative-mail-by-constant-contact/src/views/admin-dashboard-widget/divider.php
- 151× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_html_e() in wp-content/plugins/creative-mail-by-constant-contact/src/views/admin-feedback-notice/sync-disabled.php:6
- > PHP Fatal error
Uncaught Error: Interface 'Monolog\\Processor\\ProcessorInterface' not found in wp-content/plugins/creative-mail-by-constant-contact/vendor/monolog/monolog/src/Monolog/Processor/HostnameProcessor.php:17
- > PHP Fatal error
Uncaught Error: Interface 'Monolog\\Formatter\\FormatterInterface' not found in wp-content/plugins/creative-mail-by-constant-contact/vendor/monolog/monolog/src/Monolog/Formatter/FlowdockFormatter.php:19
- > PHP Fatal error
Uncaught UnexpectedValueException: creating archive "wp-content/plugins/creative-mail-by-constant-contact/vendor/paragonie/random_compat/dist/random_compat.phar" disabled by the php.ini setting phar.readonly in /var/www/wordpress/wp-content/plugins/creative-mail-by-constant-contact/vendor/paragonie/random_compat/other/build_phar.php:12
- > PHP Fatal error
Uncaught Error: Interface 'Monolog\\Processor\\ProcessorInterface' not found in wp-content/plugins/creative-mail-by-constant-contact/vendor/monolog/monolog/src/Monolog/Processor/GitProcessor.php:26
- > PHP Fatal error
Uncaught Error: Class 'Monolog\\Handler\\AbstractProcessingHandler' not found in wp-content/plugins/creative-mail-by-constant-contact/src/Managers/Logs/DatadogHandler.php:20
- > PHP Fatal error
Uncaught Error: Interface 'Monolog\\Handler\\FingersCrossed\\ActivationStrategyInterface' not found in wp-content/plugins/creative-mail-by-constant-contact/vendor/monolog/monolog/src/Monolog/Handler/FingersCrossed/ChannelLevelActivationStrategy.php:41
- > PHP Fatal error
Uncaught Error: Class 'Monolog\\Formatter\ormalizerFormatter' not found in wp-content/plugins/creative-mail-by-constant-contact/vendor/monolog/monolog/src/Monolog/Formatter/JsonFormatter.php:25
- > PHP Fatal error
Uncaught Error: Class 'Monolog\\Handler\\AbstractSyslogHandler' not found in wp-content/plugins/creative-mail-by-constant-contact/vendor/monolog/monolog/src/Monolog/Handler/SyslogUdpHandler.php:25
- > PHP Fatal error
Uncaught Error: Interface 'Monolog\\Formatter\\FormatterInterface' not found in wp-content/plugins/creative-mail-by-constant-contact/vendor/monolog/monolog/src/Monolog/Formatter/FluentdFormatter.php:37
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
No browser errors were detected
Optimizations
Plugin configuration 86% from 29 tests
readme.txt 94% from 16 tests
Often overlooked, readme.txt is one of the most important files in your plugin
These attributes need to be fixed:
- Tags: Please reduce the number of tags, currently 15 tag instead of maximum 10
creative-mail-by-constant-contact/creative-mail-plugin.php 77% from 13 tests
The main PHP script in "Creative Mail – Easier WordPress & WooCommerce Email Marketing" version 1.6.7 is automatically included on every request by WordPress
Please make the necessary changes and fix the following:
- Requires at least: The required version number must match the one declared in readme.txt ("4.9" instead of "3.6.0")
- Description: Keep the plugin description shorter than 140 characters (currently 229 characters long)
- Main file name: Name the main plugin file the same as the plugin slug ("creative-mail-by-constant-contact.php" instead of "creative-mail-plugin.php")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short glimpse at programming languages used with this plugin and a check that no dangerous files are present
No dangerous file extensions were detected25,485 lines of code in 336 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 265 | 4,183 | 10,510 | 18,717 |
Markdown | 19 | 938 | 0 | 2,655 |
CSS | 4 | 171 | 8 | 1,307 |
JavaScript | 17 | 51 | 125 | 1,190 |
JSON | 10 | 0 | 0 | 842 |
SVG | 16 | 0 | 0 | 628 |
Sass | 2 | 7 | 0 | 98 |
make | 1 | 9 | 4 | 26 |
XML | 1 | 0 | 0 | 19 |
Bourne Shell | 1 | 2 | 0 | 3 |
PHP code Passed 2 tests
An short overview of logical lines of code, cyclomatic complexity, and other code metrics
There are no cyclomatic complexity problems detected for this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.36 |
Average class complexity | 10.72 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 110.00 |
Average method complexity | 2.78 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 37.00 |
Code structure | ||
---|---|---|
Namespaces | 38 | |
Interfaces | 10 | |
Traits | 5 | |
Classes | 213 | |
▷ Abstract classes | 11 | 5.16% |
▷ Concrete classes | 202 | 94.84% |
▷ Final classes | 40 | 19.80% |
Methods | 1,280 | |
▷ Static methods | 158 | 12.34% |
▷ Public methods | 917 | 71.64% |
▷ Protected methods | 197 | 15.39% |
▷ Private methods | 166 | 12.97% |
Functions | 50 | |
▷ Named functions | 6 | 12.00% |
▷ Anonymous functions | 44 | 88.00% |
Constants | 200 | |
▷ Global constants | 39 | 19.50% |
▷ Class constants | 161 | 80.50% |
▷ Public constants | 133 | 82.61% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
All PNG images should be compressed to minimize bandwidth usage for end users
7 PNG files occupy 0.19MB with 0.09MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/images/icon-small.png | 0.41KB | 0.35KB | ▼ 12.77% |
assets/images/airplane-folding.png | 10.93KB | 5.63KB | ▼ 48.45% |
assets/images/woocommerce-banners/active-cm-wc.png | 30.80KB | 12.04KB | ▼ 60.90% |
assets/images/admin-dashboard-widget/creative-mail.png | 111.13KB | 27.29KB | ▼ 75.44% |
assets/images/woocommerce-banners/setup-cm-wc.png | 13.86KB | 6.27KB | ▼ 54.78% |