Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
The plugin installed successfully, without throwing any errors or notices
Server metrics [RAM: ▲0.92MB] [CPU: ▼0.66ms] Passed 4 tests
A check of server-side resources used by NextivaONE for WordPress
No issues were detected with server-side resource usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.41 ▲0.94 | 50.52 ▲9.60 |
Dashboard /wp-admin | 4.24 ▲0.89 | 63.05 ▼2.47 |
Posts /wp-admin/edit.php | 4.35 ▲0.99 | 65.76 ▲18.33 |
Add New Post /wp-admin/post-new.php | 6.84 ▲0.95 | 94.60 ▼14.01 |
Media Library /wp-admin/upload.php | 4.13 ▲0.90 | 45.86 ▲4.25 |
Server storage [IO: ▲2.95MB] [DB: ▲0.00MB] Passed 3 tests
Input-output and database impact of this plugin
There were no storage issued detected upon installing this plugin
Filesystem: 316 new files
Database: no new tables, 7 new options
New WordPress options |
---|
can_compress_scripts |
tribe_nextivaone |
theysaidso_admin_options |
widget_recent-posts |
widget_recent-comments |
db_upgraded |
widget_theysaidso_widget |
Browser metrics Passed 4 tests
An overview of browser requirements for NextivaONE for WordPress
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,126 ▲340 | 14.91 ▲0.56 | 3.50 ▲1.28 | 41.16 ▲1.38 |
Dashboard /wp-admin | 2,488 ▲308 | 6.53 ▲0.89 | 107.87 ▲17.52 | 105.44 ▲60.06 |
Posts /wp-admin/edit.php | 2,326 ▲229 | 3.70 ▲1.68 | 52.63 ▲16.78 | 31.88 ▼2.87 |
Add New Post /wp-admin/post-new.php | 1,414 ▼114 | 16.76 ▼6.19 | 537.65 ▼105.42 | 28.27 ▼27.02 |
Media Library /wp-admin/upload.php | 1,468 ▲71 | 4.53 ▲0.43 | 86.60 ▼44.11 | 41.73 ▼11.13 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
You still need to fix the following
- Zombie WordPress options were found after uninstall: 6 options
- can_compress_scripts
- widget_theysaidso_widget
- widget_recent-comments
- theysaidso_admin_options
- db_upgraded
- widget_recent-posts
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
Even though everything seems fine, this is not an exhaustive test
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
The following issues need your attention
- 131× PHP files trigger server errors when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Interface 'Laravel\\SerializableClosure\\Contracts\\Signer' not found in wp-content/plugins/nextivaone/vendor/laravel/serializable-closure/src/Signers/Hmac.php:7
- > PHP Fatal error
Uncaught Error: Interface 'Invoker\\ParameterResolver\\ParameterResolver' not found in wp-content/plugins/nextivaone/vendor/php-di/php-di/src/Invoker/DefinitionParameterResolver.php:19
- > PHP Fatal error
strict_types declaration must be the very first statement in the script in wp-content/plugins/nextivaone/vendor/johnbillion/args/generate.php on line 4
- > PHP Fatal error
Uncaught Error: Interface 'DI\\Definition\\Source\\DefinitionSource' not found in wp-content/plugins/nextivaone/vendor/php-di/php-di/src/Definition/Source/SourceCache.php:14
- > PHP Fatal error
Uncaught Error: Interface 'DI\\Definition\\Source\\DefinitionSource' not found in wp-content/plugins/nextivaone/vendor/php-di/php-di/src/Definition/Source/ReflectionBasedAutowiring.php:17
- > PHP Fatal error
Uncaught Error: Interface 'DI\\Definition\\Definition' not found in wp-content/plugins/nextivaone/vendor/php-di/php-di/src/Definition/ArrayDefinition.php:13
- > PHP Fatal error
Uncaught Error: Class 'Tribe\\Libs\\Container\\Abstract_Subscriber' not found in wp-content/plugins/nextivaone/src/Routes/Routes_Subscriber.php:10
- > PHP Fatal error
Uncaught Error: Interface 'DI\\Definition\\Source\\DefinitionSource' not found in wp-content/plugins/nextivaone/vendor/php-di/php-di/src/Definition/Source/MutableDefinitionSource.php:14
- > PHP Fatal error
Uncaught Error: Class 'DI\\Definition\\ArrayDefinition' not found in wp-content/plugins/nextivaone/vendor/php-di/php-di/src/Definition/ArrayDefinitionExtension.php:15
- > PHP Fatal error
Uncaught Error: Class 'Args\\Shared\\Base' not found in wp-content/plugins/nextivaone/vendor/johnbillion/args/src/WP_User_Query.php:12
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
No browser issues were found
Optimizations
Plugin configuration 86% from 29 tests
readme.txt Passed 16 tests
It's important to format your readme.txt file correctly as it is parsed for the public listing of your plugin
8 plugin tags: click to call, click to text, conversion, action button, phone...
nextivaone/core.php 69% from 13 tests
The main PHP script in "NextivaONE for WordPress" version 1.0.4 is automatically included on every request by WordPress
Please take the time to fix the following:
- Description: Keep the plugin description shorter than 140 characters (currently 235 characters long)
- Requires PHP: Please use periods and digits for the required version (ex. "7.0" instead of "7.4+")
- Main file name: The principal plugin file should be the same as the plugin slug ("nextivaone.php" instead of "core.php")
- Domain Path: The domain path folder does not exist ("/languages")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | There should be no dangerous file extensions present in any WordPress plugin
There were no executable files found in this plugin16,111 lines of code in 287 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 227 | 3,352 | 7,072 | 12,402 |
Markdown | 27 | 833 | 0 | 1,976 |
JSON | 14 | 0 | 0 | 1,411 |
YAML | 9 | 35 | 2 | 246 |
XML | 4 | 11 | 3 | 71 |
JavaScript | 3 | 0 | 0 | 3 |
CSS | 3 | 1 | 0 | 2 |
PHP code Passed 2 tests
This is a very shot review of cyclomatic complexity and code structure
There are no cyclomatic complexity problems detected for this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.41 |
Average class complexity | 9.06 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 318.00 |
Average method complexity | 3.19 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 63.00 |
Code structure | ||
---|---|---|
Namespaces | 47 | |
Interfaces | 28 | |
Traits | 5 | |
Classes | 172 | |
▷ Abstract classes | 10 | 5.81% |
▷ Concrete classes | 162 | 94.19% |
▷ Final classes | 9 | 5.56% |
Methods | 695 | |
▷ Static methods | 60 | 8.63% |
▷ Public methods | 554 | 79.71% |
▷ Protected methods | 67 | 9.64% |
▷ Private methods | 74 | 10.65% |
Functions | 52 | |
▷ Named functions | 12 | 23.08% |
▷ Anonymous functions | 40 | 76.92% |
Constants | 205 | |
▷ Global constants | 8 | 3.90% |
▷ Class constants | 197 | 96.10% |
▷ Public constants | 193 | 97.97% |
Plugin size 50% from 2 tests
Image compression 50% from 2 tests
It is recommended to compress PNG files in your plugin to minimize bandwidth usage
7 PNG files occupy 0.70MB with 0.43MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
.wordpress-org/banner-1544x500.png | 217.02KB | 78.97KB | ▼ 63.61% |
resources/images/admin/flags.png | 69.20KB | 23.42KB | ▼ 66.16% |
resources/images/admin/nextiva-one-admin-header-cutout.png | 46.25KB | 18.80KB | ▼ 59.34% |
resources/images/admin/nextiva-one-admin-plugin-banner-cutout.png | 68.43KB | 27.47KB | ▼ 59.86% |
resources/images/admin/nextiva-one-admin-splash-cutout.png | 68.61KB | 27.79KB | ▼ 59.49% |