Benchmarks
Plugin footprint Passed 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | It is important to correctly install your plugin, without throwing errors or notices
The plugin installed successfully, without throwing any errors or notices
Server metrics [RAM: ▲0.07MB] [CPU: ▼302.50ms] Passed 4 tests
A check of server-side resources used by Magic Popups
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 2.89 ▲0.17 | 32.74 ▲11.88 |
Dashboard /wp-admin | 3.12 ▲0.07 | 46.10 ▲0.89 |
Posts /wp-admin/edit.php | 3.23 ▲0.12 | 41.06 ▼3.01 |
Add New Post /wp-admin/post-new.php | 5.48 ▲0.05 | 97.24 ▼1,201.09 |
Media Library /wp-admin/upload.php | 3.06 ▲0.05 | 31.46 ▼6.79 |
Server storage [IO: ▲1.41MB] [DB: ▲0.00MB] Passed 3 tests
Analyzing filesystem and database footprints of this plugin
No storage issues were detected
Filesystem: 36 new files
Database: no new tables, no new options
Browser metrics Passed 4 tests
Magic Popups: an overview of browser usage
Minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,725 ▲119 | 16.26 ▲0.80 | 8.48 ▲0.84 | 49.00 ▲0.70 |
Dashboard /wp-admin | 2,977 ▲127 | 6.03 ▲0.11 | 134.57 ▲1.24 | 126.45 ▲21.71 |
Posts /wp-admin/edit.php | 2,741 ▲35 | 2.70 ▼0.00 | 60.49 ▼3.92 | 84.49 ▲4.34 |
Add New Post /wp-admin/post-new.php | 1,605 ▼252 | 21.40 ▲2.26 | 292.92 ▼76.58 | 106.62 ▲2.18 |
Media Library /wp-admin/upload.php | 1,739 ▼33 | 5.03 ▲0.02 | 124.92 ▼16.88 | 135.10 ▲17.13 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] Passed 4 tests
🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
The plugin uninstalled completely, with no zombie files or tables
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no server-side errors were triggered
The smoke test was a success, however most plugin functionality was not tested
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
- 3× GET requests to PHP files have triggered server-side errors or warnings:
- > PHP Fatal error
Uncaught Error: Class 'WP_Query' not found in wp-content/plugins/magic-popups/admin/partials/magic-popups-admin-display.php:65
- > PHP Fatal error
Uncaught Error: Call to undefined function add_shortcode() in wp-content/plugins/magic-popups/public/partials/magicpopups-public-display.php:105
- > PHP Notice
Undefined index: title in wp-content/plugins/magic-popups/admin/partials/magic-popups-admin-display.php on line 18
- > 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 on the user side
Optimizations
Plugin configuration 83% from 29 tests
readme.txt 88% from 16 tests
The readme.txt file describes your plugin functionality and requirements and it is parsed to prepare the your plugin's listing
Please fix the following attributes:
- Screenshots: Please add images for these screenshots: #1 (The popup display settings for on load page), #2 (Popup display for on wait settings), #3 (Small Popup Or center Popup), #4 (Full Window Popup), #5 (Using Shortcode in widgets), #6 (Youtube video), #7 (Facebook Like Box), #8 (Google Maps), #9 (Full Popup Display)
- Tags: There are too many tags (45 tag instead of maximum 10)
magic-popups/magicpopups.php 77% from 13 tests
The principal PHP file in "Magic Popups" v. 1.0.0 is loaded by WordPress automatically on each request
The following require your attention:
- Domain Path: The domain path folder does not exist ("/languages")
- Main file name: Name the main plugin file the same as the plugin slug ("magic-popups.php" instead of "magicpopups.php")
- Text Domain: The text domain should only use lowercase characters and dashes
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
Success! There were no dangerous files found in this plugin1,197 lines of code in 21 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
CSS | 4 | 80 | 61 | 664 |
PHP | 12 | 153 | 562 | 312 |
JavaScript | 5 | 57 | 135 | 221 |
PHP code Passed 2 tests
A short review of cyclomatic complexity and code structure
Great job! No cyclomatic complexity issues were detected in this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.13 |
Average class complexity | 1.29 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 3.00 |
Average method complexity | 1.07 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 3.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 7 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 7 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 27 | |
▷ Static methods | 2 | 7.41% |
▷ Public methods | 23 | 85.19% |
▷ Protected methods | 0 | 0.00% |
▷ Private methods | 4 | 14.81% |
Functions | 4 | |
▷ Named functions | 4 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 0 | |
▷ Global constants | 0 | 0.00% |
▷ Class constants | 0 | 0.00% |
▷ Public constants | 0 | 0.00% |
Plugin size 0% from 1 test
Image compression 0% from 1 test
All PNG images should be compressed to minimize bandwidth usage for end users
10 PNG files occupy 1.32MB with 0.85MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
screenshot-4.png | 42.83KB | 19.89KB | ▼ 53.56% |
screenshot-1.png | 38.64KB | 15.98KB | ▼ 58.63% |
screenshot-2.png | 45.43KB | 19.24KB | ▼ 57.64% |
screenshot-7.png | 282.02KB | 75.15KB | ▼ 73.35% |
screenshot-9.png | 333.92KB | 79.31KB | ▼ 76.25% |