Benchmarks
Plugin footprint 23% from 16 tests
Installer 0% from 1 test
🔺 Critical test (weight: 50) | All plugins must install correctly, without throwing any errors, warnings, or notices
Please fix the following installer errors
- This plugin did not install gracefully
- > Deprecated in wp-content/plugins/magic-wp-coupons/admin/widgets/latest_coupons.php+7
Methods with the same name as their class will not be constructors in a future version of PHP; dv_latest_coupons_widget has a deprecated constructor
Server metrics [RAM: ▼1.87MB] [CPU: ▼53.31ms] Passed 4 tests
Analyzing server-side resources used by Magic WP Coupons - Lite
This plugin has minimal impact on server resources
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 2.13 ▼1.33 | 5.65 ▼35.18 |
Dashboard /wp-admin | 2.15 ▼1.20 | 9.41 ▼53.62 |
Posts /wp-admin/edit.php | 2.15 ▼1.21 | 7.99 ▼37.00 |
Add New Post /wp-admin/post-new.php | 2.15 ▼3.74 | 7.96 ▼87.44 |
Media Library /wp-admin/upload.php | 2.15 ▼1.08 | 6.96 ▼26.08 |
Add New Coupon /wp-admin/post-new.php?post_type=coupons | 2.15 | 7.76 |
Stores /wp-admin/edit-tags.php?taxonomy=stores&post_type=coupons | 2.15 | 8.72 |
All Coupons /wp-admin/edit.php?post_type=coupons | 2.15 | 7.62 |
Server storage [IO: ▲6.33MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
No storage issues were detected
Filesystem: 474 new files
Database: 3 new tables, 9 new options
New tables |
---|
wp_taxonomymeta |
dv_cloaked_urls |
dv_report |
New WordPress options |
---|
theysaidso_admin_options |
widget_dv_coupons_popular_widget_id |
widget_dv_coupons_stores_widget_id |
widget_recent-posts |
can_compress_scripts |
widget_home_top_work_widget |
widget_theysaidso_widget |
widget_recent-comments |
db_upgraded |
Browser metrics Passed 4 tests
A check of browser resources used by Magic WP Coupons - Lite
This plugin renders optimally with no browser resource issues detected
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,220 ▲474 | 14.60 ▲0.02 | 7.95 ▲6.17 | 27.05 ▼19.11 |
Dashboard /wp-admin | 2,452 ▲264 | 6.06 ▲0.97 | 119.29 ▲5.55 | 47.63 ▲2.08 |
Posts /wp-admin/edit.php | 2,200 ▲111 | 2.78 ▲0.78 | 42.31 ▲5.97 | 41.44 ▲3.04 |
Add New Post /wp-admin/post-new.php | 1,603 ▲82 | 18.64 ▼4.51 | 642.42 ▼71.94 | 34.12 ▼24.23 |
Media Library /wp-admin/upload.php | 1,489 ▲98 | 5.22 ▲1.04 | 103.63 ▲1.54 | 41.50 ▼3.14 |
Add New Coupon /wp-admin/post-new.php?post_type=coupons | 2,391 | 4.81 | 82.07 | 36.67 |
Stores /wp-admin/edit-tags.php?taxonomy=stores&post_type=coupons | 1,400 | 2.52 | 39.95 | 31.31 |
All Coupons /wp-admin/edit.php?post_type=coupons | 1,252 | 2.75 | 39.14 | 29.77 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 25% 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
- This plugin cannot be uninstalled
- > Deprecated in wp-content/plugins/magic-wp-coupons/admin/widgets/latest_coupons.php+7
Methods with the same name as their class will not be constructors in a future version of PHP; dv_latest_coupons_widget has a deprecated constructor
- Zombie tables were found after uninstall: 3 tables
- wp_taxonomymeta
- dv_report
- dv_cloaked_urls
- This plugin does not fully uninstall, leaving 9 options in the database
- db_upgraded
- widget_recent-comments
- widget_dv_coupons_popular_widget_id
- widget_dv_coupons_stores_widget_id
- widget_theysaidso_widget
- can_compress_scripts
- widget_home_top_work_widget
- theysaidso_admin_options
- widget_recent-posts
Smoke tests 50% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | A shallow check that no server-side errors were triggered
Please fix the following server-side errors
- 4 occurences, only the last one shown
- > GET request to /wp-admin/edit.php?post_type=coupons
- > POST request to /wp-admin/admin-ajax.php
- > Deprecated in wp-content/plugins/magic-wp-coupons/admin/widgets/latest_coupons.php+7
Methods with the same name as their class will not be constructors in a future version of PHP; dv_latest_coupons_widget has a deprecated constructor
- 4 occurences, only the last one shown
- > GET request to /wp-admin/edit.php?post_type=coupons
- > POST request to /wp-admin/admin-ajax.php
- > Deprecated in wp-content/plugins/magic-wp-coupons/admin/widgets/popular_coupons.php+7
Methods with the same name as their class will not be constructors in a future version of PHP; dv_popular_coupons_widget has a deprecated constructor
- 4 occurences, only the last one shown
- > GET request to /wp-admin/edit.php?post_type=coupons
- > POST request to /wp-admin/admin-ajax.php
- > Deprecated in wp-content/plugins/magic-wp-coupons/admin/widgets/coupon_stores.php+7
Methods with the same name as their class will not be constructors in a future version of PHP; dv_coupon_stores_widget has a deprecated constructor
- 4 occurences, only the last one shown
- > GET request to /wp-admin/edit.php?post_type=coupons
- > POST request to /wp-admin/admin-ajax.php
- > Deprecated in wp-content/plugins/magic-wp-coupons/lib/report.class.php+8
Methods with the same name as their class will not be constructors in a future version of PHP; DV_Coupon_Report has a deprecated constructor
- 4 occurences, only the last one shown
- > GET request to /wp-admin/edit.php?post_type=coupons
- > POST request to /wp-admin/admin-ajax.php
- > User notice in wp-includes/functions.php+5905
Function register_sidebar was called incorrectly. No id was set in the arguments array for the "Blog Sidebar" sidebar. Defaulting to "sidebar-1". Manually set the id to "sidebar-1" to silence this notice and keep existing sidebar content. Please see Debugging in WordPress for more information. (This message was added in version 4.2.0.)
- 4 occurences, only the last one shown
- > GET request to /wp-admin/edit.php?post_type=coupons
- > POST request to /wp-admin/admin-ajax.php
- > User deprecated in wp-includes/functions.php+5546
The called constructor method for WP_Widget class in dv_latest_coupons_widget is deprecated since version 4.3.0! Use __construct() instead.
- 4 occurences, only the last one shown
- > GET request to /wp-admin/edit.php?post_type=coupons
- > POST request to /wp-admin/admin-ajax.php
- > User deprecated in wp-includes/functions.php+5546
The called constructor method for WP_Widget class in dv_popular_coupons_widget is deprecated since version 4.3.0! Use __construct() instead.
- 4 occurences, only the last one shown
- > GET request to /wp-admin/edit.php?post_type=coupons
- > POST request to /wp-admin/admin-ajax.php
- > User deprecated in wp-includes/functions.php+5546
The called constructor method for WP_Widget class in dv_coupon_stores_widget is deprecated since version 4.3.0! Use __construct() instead.
- > GET request to /wp-admin/post-new.php?post_type=coupons
- > Notice in wp-content/plugins/magic-wp-coupons/admin/meta_box.php+104
Undefined index: dv_coupons_meta_box_nonce
- 4 occurences, only the last one shown
- > GET request to /wp-admin/post-new.php?post_type=coupons
- > Notice in wp-content/plugins/magic-wp-coupons/admin/meta_box.php+71
Undefined index: std
SRP 50% 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 fix the following
- 40× PHP files trigger server-side errors or warnings when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Call to undefined function add_action() in wp-content/plugins/magic-wp-coupons/lib/functions.php:116
- > PHP Notice
Undefined variable: shortname in wp-content/plugins/magic-wp-coupons/admin/includes/data_options.php on line 16
- > PHP Warning
Use of undefined constant PLUGIN_BASE - assumed 'PLUGIN_BASE' (this will throw an Error in a future version of PHP) in wp-content/plugins/magic-wp-coupons/admin/includes/data_options.php on line 112
- > PHP Fatal error
Uncaught Error: Call to undefined function get_template_directory() in wp-content/plugins/magic-wp-coupons/taxonomy-stores.php:3
- > PHP Fatal error
Uncaught Error: Call to undefined function add_filter() in wp-content/plugins/magic-wp-coupons/lib/admin_reporting.php:6
- > PHP Fatal error
Uncaught Error: Call to undefined function plugin_dir_url() in wp-content/plugins/magic-wp-coupons/index.php:17
- > PHP Notice
Undefined variable: shortname in wp-content/plugins/magic-wp-coupons/admin/includes/data_options.php on line 220
- > PHP Fatal error
Uncaught Error: Call to undefined function add_action() in wp-content/plugins/magic-wp-coupons/admin/term_meta_class.php:5
- > PHP Notice
Undefined variable: shortname in wp-content/plugins/magic-wp-coupons/admin/includes/data_options.php on line 144
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/magic-wp-coupons/lib/cron.php:26
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
Everything seems fine, but this is not an exhaustive test
Optimizations
Plugin configuration 87% from 29 tests
readme.txt 88% from 16 tests
It's important to format your readme.txt file correctly as it is parsed for the public listing of your plugin
Attributes that need to be fixed:
- Tags: You are using too many tags: 22 tag instead of maximum 10
- Screenshots: These screenshots require images: #1 (Magic WP Coupons settings page to enable/disable features), #2 (Uploading and activating new templates), #3 (Managing coupon stores), #4 (Adding new coupons manually), #5 (Using shortcode insert button), #6 (Adding shortcodes to page or posts), #7 (The front-end of the site with coupons displayed with activated template)
magic-wp-coupons/index.php 85% from 13 tests
The primary PHP file in "Magic WP Coupons - Lite" version 3.0 is used by WordPress to initiate all plugin functionality
It is important to fix the following:
- Description: Please keep the plugin description shorter than 140 characters (currently 148 characters long)
- Main file name: The principal plugin file should be the same as the plugin slug ("magic-wp-coupons.php" instead of "index.php")
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
There were no executable files found in this plugin32,001 lines of code in 131 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
JavaScript | 37 | 3,479 | 2,036 | 19,095 |
CSS | 29 | 2,068 | 95 | 6,387 |
PHP | 31 | 1,400 | 527 | 4,245 |
HTML | 28 | 582 | 12 | 1,527 |
SVG | 1 | 0 | 0 | 504 |
LESS | 2 | 17 | 4 | 197 |
Markdown | 2 | 24 | 0 | 35 |
JSON | 1 | 0 | 0 | 11 |
PHP code Passed 2 tests
A brief analysis of cyclomatic complexity and code structure for this plugin
There were no cyclomatic complexity issued detected
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.30 |
Average class complexity | 32.18 |
▷ Minimum class complexity | 2.00 |
▷ Maximum class complexity | 208.00 |
Average method complexity | 3.93 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 65.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 11 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 11 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 117 | |
▷ Static methods | 3 | 2.56% |
▷ Public methods | 86 | 73.50% |
▷ Protected methods | 30 | 25.64% |
▷ Private methods | 1 | 0.85% |
Functions | 81 | |
▷ Named functions | 81 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 57 | |
▷ Global constants | 57 | 100.00% |
▷ Class constants | 0 | 0.00% |
▷ Public constants | 0 | 0.00% |
Plugin size 50% from 2 tests
Image compression 50% from 2 tests
PNG files should be compressed to save space and minimize bandwidth usage
149 PNG files occupy 1.73MB with 0.64MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
templates/superfoodcoupons/sprite.png | 18.56KB | 8.40KB | ▼ 54.75% |
templates/koupon/images/googleplus.png | 6.06KB | 3.22KB | ▼ 46.83% |
admin/css/ui-darkness/images/ui-bg_highlight-soft_80_eeeeee_1x100.png | 0.27KB | 0.13KB | ▼ 51.45% |
templates/mycoupons/code.png | 1.02KB | 0.93KB | ▼ 8.69% |
admin/images/custom_hsb_s.png | 1.14KB | 0.89KB | ▼ 21.75% |