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
Install script ran successfully
Server metrics [RAM: ▲0.27MB] [CPU: ▼261.51ms] Passed 4 tests
An overview of server-side resources used by Countdown Timer
This plugin has minimal impact on server resources
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.06 ▲0.34 | 40.07 ▲19.96 |
Dashboard /wp-admin | 3.36 ▲0.30 | 48.41 ▲5.91 |
Posts /wp-admin/edit.php | 3.41 ▲0.30 | 46.14 ▲3.67 |
Add New Post /wp-admin/post-new.php | 5.66 ▲0.23 | 98.04 ▼1,045.95 |
Media Library /wp-admin/upload.php | 3.24 ▲0.23 | 31.46 ▼9.66 |
Server storage [IO: ▲0.86MB] [DB: ▲0.00MB] Passed 3 tests
Filesystem and database footprint
This plugin was installed successfully
Filesystem: 57 new files
Database: no new tables, 17 new options
New WordPress options |
---|
fergcorp_countdownTimer_version |
fergcorp_countdownTimer_showMinute |
fergcorp_countdownTimer_showMonth |
fergcorp_countdownTimer_timeSinceTime |
fergcorp_countdownTimer_enableShortcodeExcerpt |
fergcorp_countdownTimer_timeFormat |
fergcorp_countdownTimer_showDay |
fergcorp_countdownTimer_showYear |
fergcorp_countdownTimer_oneTimeEvent |
fergcorp_countdownTimer_enableJS |
... |
Browser metrics Passed 4 tests
Checking browser requirements for Countdown Timer
This plugin renders optimally with no browser resource issues detected
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,768 ▲162 | 16.28 ▲0.71 | 13.19 ▲4.84 | 49.29 ▲0.22 |
Dashboard /wp-admin | 2,957 ▲107 | 5.93 ▲0.09 | 133.63 ▲3.16 | 103.14 ▲2.89 |
Posts /wp-admin/edit.php | 2,711 ▲5 | 2.69 ▼0.00 | 64.91 ▲1.25 | 93.73 ▲10.20 |
Add New Post /wp-admin/post-new.php | 1,856 ▲5 | 19.13 ▲1.35 | 363.62 ▼13.79 | 106.93 ▲4.59 |
Media Library /wp-admin/upload.php | 1,777 ▲5 | 5.04 ▲0.01 | 142.66 ▼4.67 | 107.74 ▼12.29 |
Countdown Timer /wp-admin/fergcorp_countdownTimer.php | 26 | 0.90 | 0.09 | 11.17 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] Passed 4 tests
🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
The plugin uninstalled completely, with no zombie files or tables
Smoke tests 25% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no server-side errors were triggered
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
Please fix the following
- 1× PHP files perform the action of outputting non-empty strings when accessed directly:
- > /wp-content/plugins/countdown-timer/index.php
- 3× GET requests to PHP files trigger server-side errors or Error 500 responses:
- > PHP Warning
require_once(fergcorp_countdownTimer.php): failed to open stream: No such file or directory in wp-content/plugins/countdown-timer/tests/CountDownTimerTest.php on line 2
- > PHP Fatal error
require_once(): Failed opening required 'fergcorp_countdownTimer.php' (include_path='.:/usr/share/php') in wp-content/plugins/countdown-timer/tests/CountDownTimerTest.php on line 2
- > PHP Fatal error
Uncaught Error: Class 'WP_Widget' not found in wp-content/plugins/countdown-timer/fergcorp_countdownTimer.php:1276
- > PHP Warning
User-side errors 0% from 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
These are user-side errors you should fix
- > GET request to /wp-admin/fergcorp_countdownTimer.php
- > Network (severe)
wp-admin/fergcorp_countdownTimer.php - Failed to load resource: the server responded with a status of 404 (Not Found)
Optimizations
Plugin configuration 90% from 29 tests
readme.txt 88% from 16 tests
You should put a lot of thought into formatting readme.txt as it is used by WordPress.org to prepare the public listing of your plugin
These attributes need to be fixed:
- Tags: Please delete some tags, you are using 15 tag instead of maximum 10
- Screenshots: These screenshots require images: #1 (Administration Interface), #2 (Example on Blog)
countdown-timer/fergcorp_countdownTimer.php 92% from 13 tests
Analyzing the main PHP file in "Countdown Timer" version 3.0.7
You should first fix the following items:
- Main file name: The principal plugin file should be the same as the plugin slug ("countdown-timer.php" instead of "fergcorp_countdownTimer.php")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | An overview of files in this plugin; executable files are not allowed
No dangerous file extensions were detected6,573 lines of code in 30 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PO File | 22 | 1,544 | 3,747 | 4,215 |
PHP | 4 | 552 | 629 | 2,056 |
JavaScript | 4 | 57 | 37 | 302 |
PHP code Passed 2 tests
A brief analysis of cyclomatic complexity and code structure for this plugin
This plugin has no cyclomatic complexity issues
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.12 |
Average class complexity | 8.47 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 80.00 |
Average method complexity | 2.02 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 39.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 17 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 17 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 125 | |
▷ Static methods | 1 | 0.80% |
▷ Public methods | 125 | 100.00% |
▷ Protected methods | 0 | 0.00% |
▷ Private methods | 0 | 0.00% |
Functions | 3 | |
▷ Named functions | 3 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 3 | |
▷ Global constants | 3 | 100.00% |
▷ Class constants | 0 | 0.00% |
▷ Public constants | 0 | 0.00% |
Plugin size Passed 1 test
Image compression Passed 1 test
It is recommended to compress PNG files in your plugin to minimize bandwidth usage
2 compressed PNG files occupy 0.21MB
Potential savings
Compression of 2 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
screenshot-2.png | 106.43KB | 107.73KB | 0.00% |
screenshot-1.png | 108.68KB | 109.96KB | 0.00% |