Benchmarks
Plugin footprint 40% from 16 tests
Installer 0% from 1 test
🔺 Critical test (weight: 50) | The install procedure must perform silently
You still need to fix the following installer errors
- This plugin did not install gracefully
- > Notice in wp-content/plugins/vjoon-wp-adapter/src/Functions.php+115
Undefined variable: caller
Server metrics [RAM: ▲0.60MB] [CPU: ▼1.62ms] Passed 4 tests
An overview of server-side resources used by vjoon WordPress Adapter
This plugin has minimal impact on server resources
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.08 ▲0.61 | 40.31 ▲0.94 |
Dashboard /wp-admin | 3.91 ▲0.57 | 46.73 ▼14.13 |
Posts /wp-admin/edit.php | 3.97 ▲0.61 | 46.03 ▲2.05 |
Add New Post /wp-admin/post-new.php | 6.55 ▲0.66 | 91.40 ▲4.68 |
Media Library /wp-admin/upload.php | 3.84 ▲0.61 | 42.67 ▲7.43 |
vjoon WP Adapter /wp-admin/options-general.php?page=vj_wp_adapter_settings | 3.81 | 34.67 |
Server storage [IO: ▲2.27MB] [DB: ▲0.00MB] Passed 3 tests
How much does this plugin use your filesystem and database?
The plugin installed successfully
Filesystem: 418 new files
Database: no new tables, 7 new options
New WordPress options |
---|
db_upgraded |
widget_recent-comments |
widget_recent-posts |
theysaidso_admin_options |
widget_theysaidso_widget |
can_compress_scripts |
vjwpad_settings |
Browser metrics Passed 4 tests
This is an overview of browser requirements for vjoon WordPress Adapter
This plugin renders optimally with no browser resource issues detected
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,813 ▲67 | 13.24 ▼1.11 | 1.64 ▼0.11 | 38.94 ▼5.42 |
Dashboard /wp-admin | 2,216 ▲25 | 5.83 ▼0.08 | 93.34 ▼6.80 | 39.52 ▼3.35 |
Posts /wp-admin/edit.php | 2,112 ▲26 | 1.99 ▼0.01 | 34.17 ▼0.45 | 32.50 ▼6.08 |
Add New Post /wp-admin/post-new.php | 1,549 ▲32 | 18.72 ▲1.29 | 643.32 ▼14.18 | 59.41 ▲9.84 |
Media Library /wp-admin/upload.php | 1,398 ▲7 | 4.16 ▼0.10 | 92.86 ▼13.13 | 41.51 ▼4.08 |
vjoon WP Adapter /wp-admin/options-general.php?page=vj_wp_adapter_settings | 921 | 2.11 | 30.23 | 27.43 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 50% from 4 tests
🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
Please fix the following items
- The plugin did not uninstall gracefully
- > Notice in wp-content/plugins/vjoon-wp-adapter/src/Provider.php+58
Undefined variable: mu_user_appendix
- Zombie WordPress options were found after uninstall: 6 options
- widget_recent-comments
- theysaidso_admin_options
- widget_theysaidso_widget
- widget_recent-posts
- can_compress_scripts
- db_upgraded
Smoke tests 50% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | Just a short smoke test targeting errors on the server (in the Apache logs)
Almost there, just fix the following server-side errors
- > GET request to /wp-admin/options-general.php?page=vj_wp_adapter_settings
- > Notice in wp-content/plugins/vjoon-wp-adapter/lib/backend/settings.php+93
Undefined property: stdClass::$key
- > GET request to /wp-admin/options-general.php?page=vj_wp_adapter_settings
- > Notice in wp-content/plugins/vjoon-wp-adapter/lib/backend/settings.php+105
Undefined property: stdClass::$secret
SRP 50% from 2 tests
🔹 Tests weight: 20 | The single-responsibility principle applies for WordPress plugins as well - please make sure your PHP files perform no actions when accessed directly
The following issues need your attention
- 162× GET requests to PHP files have triggered server-side errors or warnings (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'phpseclib3\\Crypt\\EC\\Curves\\secp521r1' not found in wp-content/plugins/vjoon-wp-adapter/vendor/phpseclib/phpseclib/phpseclib/Crypt/EC/Curves/nistp521.php:18
- > PHP Fatal error
Uncaught Error: Class 'phpseclib3\\Crypt\\RSA' not found in wp-content/plugins/vjoon-wp-adapter/vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA/PrivateKey.php:30
- > PHP Fatal error
Uncaught Error: Class 'phpseclib3\\Crypt\\Common\\Formats\\Keys\\OpenSSH' not found in wp-content/plugins/vjoon-wp-adapter/vendor/phpseclib/phpseclib/phpseclib/Crypt/EC/Formats/Keys/OpenSSH.php:34
- > PHP Fatal error
Uncaught Error: Class 'phpseclib3\\Crypt\\Common\\Formats\\Keys\\PKCS8' not found in wp-content/plugins/vjoon-wp-adapter/vendor/phpseclib/phpseclib/phpseclib/Crypt/DH/Formats/Keys/PKCS8.php:37
- > PHP Fatal error
Uncaught Error: Class 'phpseclib3\\Crypt\\Common\\BlockCipher' not found in wp-content/plugins/vjoon-wp-adapter/vendor/phpseclib/phpseclib/phpseclib/Crypt/Twofish.php:51
- > PHP Fatal error
Uncaught Error: Class 'phpseclib3\\Math\\BigInteger\\Engines\\PHP' not found in wp-content/plugins/vjoon-wp-adapter/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger/Engines/PHP/Base.php:27
- > PHP Fatal error
Uncaught Error: Class 'phpseclib3\\Crypt\\EC\\BaseCurves\\Binary' not found in wp-content/plugins/vjoon-wp-adapter/vendor/phpseclib/phpseclib/phpseclib/Crypt/EC/Curves/sect163r1.php:21
- > PHP Fatal error
Uncaught Error: Interface 'ParagonIE\\ConstantTime\\EncoderInterface' not found in wp-content/plugins/vjoon-wp-adapter/vendor/paragonie/constant_time_encoding/src/Base32.php:34
- > PHP Fatal error
Uncaught Error: Class 'phpseclib3\\Crypt\\DES' not found in wp-content/plugins/vjoon-wp-adapter/vendor/phpseclib/phpseclib/phpseclib/Crypt/TripleDES.php:46
- > PHP Fatal error
Uncaught Error: Class 'phpseclib3\\Crypt\\EC\\BaseCurves\\KoblitzPrime' not found in wp-content/plugins/vjoon-wp-adapter/vendor/phpseclib/phpseclib/phpseclib/Crypt/EC/Curves/secp256k1.php:25
- > 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)
No browser errors were detected
Optimizations
Plugin configuration 86% from 29 tests
readme.txt 94% from 16 tests
The readme.txt file is undoubtedly the most important file in your plugin, preparing it for public listing on WordPress.org
Attributes that require attention:
- Screenshots: Please add images for these screenshots: #1 (This screen shot description corresponds to screenshot-1.(png|jpg|jpeg|gif). Note that the screenshot is taken from), #2 (This is the second screen shot)
vjoon-wp-adapter/Adapter.php 77% from 13 tests
The main PHP script in "vjoon WordPress Adapter" version 2.0.1 is automatically included on every request by WordPress
You should first fix the following items:
- Main file name: Please rename the main PHP file in this plugin to the plugin slug ("vjoon-wp-adapter.php" instead of "Adapter.php")
- Domain Path: The domain path follows the same naming rules as the domain name, using only dashes and lowercase characters ("resources/LocalizedStrings")
- Text Domain: Since WordPress version 4.6 the text domain is optional; if specified, it must be the same as the plugin slug
Code Analysis 97% from 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 plugin39,152 lines of code in 404 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 370 | 7,467 | 25,231 | 37,090 |
JavaScript | 11 | 123 | 154 | 975 |
JSON | 6 | 3 | 0 | 495 |
CSS | 8 | 22 | 27 | 197 |
Markdown | 4 | 90 | 0 | 191 |
XML | 2 | 21 | 17 | 106 |
YAML | 2 | 3 | 2 | 95 |
Bourne Shell | 1 | 2 | 0 | 3 |
PHP code 50% from 2 tests
A brief analysis of cyclomatic complexity and code structure for this plugin
Please fix the following
- Method cyclomatic complexity has to be reduced to less than 100 (currently 105)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.37 |
Average class complexity | 16.15 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 662.00 |
Average method complexity | 4.25 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 105.00 |
Code structure | ||
---|---|---|
Namespaces | 41 | |
Interfaces | 3 | |
Traits | 4 | |
Classes | 351 | |
▷ Abstract classes | 205 | 58.40% |
▷ Concrete classes | 146 | 41.60% |
▷ Final classes | 28 | 19.18% |
Methods | 1,617 | |
▷ Static methods | 562 | 34.76% |
▷ Public methods | 1,134 | 70.13% |
▷ Protected methods | 254 | 15.71% |
▷ Private methods | 229 | 14.16% |
Functions | 26 | |
▷ Named functions | 3 | 11.54% |
▷ Anonymous functions | 23 | 88.46% |
Constants | 310 | |
▷ Global constants | 4 | 1.29% |
▷ Class constants | 306 | 98.71% |
▷ Public constants | 306 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
It is recommended to compress PNG files in your plugin to minimize bandwidth usage
No PNG files were detected