Benchmarks
Plugin footprint 82% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
Install script ran successfully
Server metrics [RAM: ▲5.73MB] [CPU: ▲39.18ms] 75% from 4 tests
This is a short check of server-side resources used by Mihdan: Yandex Turbo Feed
The following require your attention
- Extra RAM: Extra memory usage should kept under 5MB (currently 5.73MB on /wp-admin/edit.php?post_type=acf-taxonomy)
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 8.78 ▲5.32 | 72.76 ▲32.12 |
Dashboard /wp-admin | 9.14 ▲5.80 | 94.80 ▲33.67 |
Posts /wp-admin/edit.php | 9.21 ▲5.85 | 94.68 ▲49.29 |
Add New Post /wp-admin/post-new.php | 12.05 ▲6.16 | 137.60 ▲41.65 |
Media Library /wp-admin/upload.php | 9.18 ▲5.95 | 86.15 ▲52.92 |
Field Groups /wp-admin/edit.php?post_type=acf-field-group | 9.18 | 80.39 |
Add Feed /wp-admin/post-new.php?post_type=mihdan_yandex_turbo | 9.54 | 102.55 |
Post Types /wp-admin/edit.php?post_type=acf-post-type | 9.18 | 90.43 |
All Feeds /wp-admin/edit.php?post_type=mihdan_yandex_turbo | 9.14 | 73.00 |
Taxonomies /wp-admin/edit.php?post_type=acf-taxonomy | 9.19 | 79.47 |
Server storage [IO: ▲15.96MB] [DB: ▲0.05MB] Passed 3 tests
Analyzing filesystem and database footprints of this plugin
This plugin installed successfully
Filesystem: 683 new files
Database: no new tables, 7 new options
New WordPress options |
---|
widget_recent-comments |
can_compress_scripts |
acf_version |
db_upgraded |
theysaidso_admin_options |
widget_theysaidso_widget |
widget_recent-posts |
Browser metrics Passed 4 tests
Checking browser requirements for Mihdan: Yandex Turbo Feed
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,846 ▲99 | 14.33 ▼0.38 | 1.94 ▲0.30 | 35.71 ▼7.28 |
Dashboard /wp-admin | 2,226 ▲49 | 5.60 ▼0.11 | 97.59 ▼0.05 | 41.59 ▼3.89 |
Posts /wp-admin/edit.php | 2,231 ▲128 | 2.19 ▲0.24 | 37.89 ▼1.06 | 39.34 ▲6.72 |
Add New Post /wp-admin/post-new.php | 6,812 ▲5,277 | 25.49 ▲2.24 | 1,057.18 ▲339.14 | 54.38 ▼8.70 |
Media Library /wp-admin/upload.php | 1,983 ▲580 | 8.32 ▲4.15 | 226.26 ▲124.68 | 50.56 ▲4.79 |
Field Groups /wp-admin/edit.php?post_type=acf-field-group | 1,640 | 2.28 | 39.65 | 88.09 |
Add Feed /wp-admin/post-new.php?post_type=mihdan_yandex_turbo | 5,291 | 9.45 | 255.89 | 68.23 |
Post Types /wp-admin/edit.php?post_type=acf-post-type | 1,670 | 2.27 | 39.75 | 42.36 |
All Feeds /wp-admin/edit.php?post_type=mihdan_yandex_turbo | 1,119 | 2.12 | 34.02 | 35.17 |
Taxonomies /wp-admin/edit.php?post_type=acf-taxonomy | 1,677 | 2.42 | 39.42 | 42.46 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.06MB] 75% from 4 tests
🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
It is recommended to fix the following
- Zombie WordPress options detected upon uninstall: 7 options
- db_upgraded
- theysaidso_admin_options
- widget_theysaidso_widget
- widget_recent-posts
- can_compress_scripts
- widget_recent-comments
- acf_version
Smoke tests 25% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
These errors were triggered by the plugin
- 2 occurences, only the last one shown
- > GET request to /wp-admin/edit.php?post_type=acf-post-type
- > request to
- > Notice in wp-config.php+20
Undefined index: REQUEST_METHOD
SRP 50% from 2 tests
🔹 Tests weight: 20 | A shallow check of the single-responsibility principle; PHP files should perform no action - including output of placeholder text - and trigger no errors when accessed directly
The following issues need your attention
- 234× PHP files trigger server-side errors or warnings when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/mihdan-yandex-turbo-feed/vendor/composer/installers/src/Composer/Installers/OctoberInstaller.php:5
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/mihdan-yandex-turbo-feed/vendor/composer/installers/src/Composer/Installers/SMFInstaller.php:5
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_url() in wp-content/plugins/mihdan-yandex-turbo-feed/vendor/advanced-custom-fields/includes/admin/views/acf-taxonomy/list-empty.php:4
- > PHP Fatal error
Uncaught Error: Call to undefined function acf_render_field_wrap() in wp-content/plugins/mihdan-yandex-turbo-feed/vendor/advanced-custom-fields/includes/admin/views/acf-taxonomy/basic-settings.php:5
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/mihdan-yandex-turbo-feed/vendor/composer/installers/src/Composer/Installers/CakePHPInstaller.php:8
- > PHP Fatal error
Uncaught Error: Class 'StoutLogic\\AcfBuilder\\Transform\\RecursiveTransform' not found in wp-content/plugins/mihdan-yandex-turbo-feed/vendor/stoutlogic/acf-builder/src/Transform/NamespaceFieldKey.php:11
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/mihdan-yandex-turbo-feed/vendor/composer/installers/src/Composer/Installers/CodeIgniterInstaller.php:5
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit_Framework_TestCase' not found in wp-content/plugins/mihdan-yandex-turbo-feed/vendor/stoutlogic/acf-builder/tests/FieldsBuilderCustomFieldKeysTest.php:7
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit_Framework_TestCase' not found in wp-content/plugins/mihdan-yandex-turbo-feed/vendor/stoutlogic/acf-builder/tests/GroupBuilderTest.php:8
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit_Framework_TestCase' not found in wp-content/plugins/mihdan-yandex-turbo-feed/vendor/stoutlogic/acf-builder/tests/FieldsBuilderTest.php:8
- > PHP Fatal error
User-side errors 0% from 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
Please fix the following browser errors
- > GET request to /wp-admin/post-new.php?post_type=mihdan_yandex_turbo
- > Console-api (warning) in unknown
/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,utils,wp-polyfill-inert,regenerator-runtime,wp-polyfill,wp-hooks&ver=6.3.1 1:28609 "jQuery.Deferred exception: inlineEditPost is not defined" "ReferenceError: inlineEditPost is not defined\n at HTMLDocument.\u003Canonymous> (/wp-content/plugins/mihdan-yandex-turbo-feed/admin/js/app.js?ver=1684239348:37:35)\n at e (/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,utils,wp-polyfill-inert,regenerator-runtime,wp-polyfill,wp-hooks&ver=6.3.1:2:26990)\n at t (/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,utils,wp-polyfill-inert,regenerator-runtime,wp-polyfill,wp-hooks&ver=6.3.1:2:27292)" undefined
- > GET request to /wp-admin/post-new.php?post_type=mihdan_yandex_turbo
- > Javascript (severe) in unknown
/wp-admin/load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,utils,wp-polyfill-inert,regenerator-runtime,wp-polyfill,wp-hooks&ver=6.3.1 1:28721 Uncaught ReferenceError: inlineEditPost is not defined
Optimizations
Plugin configuration 93% from 29 tests
readme.txt 88% from 16 tests
The readme.txt file is undoubtedly the most important file in your plugin, preparing it for public listing on WordPress.org
These attributes need to be fixed:
- Screenshots: Add descriptions for screenshots #1, #2 in mihdan-yandex-turbo-feed/assets to your readme.txt
- Tags: There are too many tags (15 tag instead of maximum 10)
mihdan-yandex-turbo-feed/mihdan-yandex-turbo-feed.php Passed 13 tests
Analyzing the main PHP file in "Mihdan: Yandex Turbo Feed" version 1.6.4
111 characters long description:
Плагин создаёт настраиваемые ленты для сервиса Яндекс Турбо
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
Everything looks great! No dangerous files found in this plugin197,896 lines of code in 567 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PO File | 46 | 44,328 | 67,629 | 106,344 |
JavaScript | 21 | 5,351 | 7,500 | 39,670 |
PHP | 384 | 12,211 | 25,273 | 38,307 |
CSS | 16 | 734 | 1,511 | 12,604 |
JSON | 1 | 0 | 0 | 389 |
SVG | 92 | 0 | 0 | 273 |
YAML | 4 | 39 | 3 | 139 |
Markdown | 1 | 29 | 0 | 87 |
reStructuredText | 1 | 74 | 78 | 75 |
XML | 1 | 0 | 0 | 8 |
PHP code Passed 2 tests
An short overview of logical lines of code, cyclomatic complexity, and other code metrics
No cyclomatic complexity issues were detected for this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.33 |
Average class complexity | 9.28 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 153.00 |
Average method complexity | 2.54 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 58.00 |
Code structure | ||
---|---|---|
Namespaces | 21 | |
Interfaces | 4 | |
Traits | 1 | |
Classes | 319 | |
▷ Abstract classes | 9 | 2.82% |
▷ Concrete classes | 310 | 97.18% |
▷ Final classes | 28 | 9.03% |
Methods | 1,748 | |
▷ Static methods | 84 | 4.81% |
▷ Public methods | 1,587 | 90.79% |
▷ Protected methods | 97 | 5.55% |
▷ Private methods | 64 | 3.66% |
Functions | 568 | |
▷ Named functions | 535 | 94.19% |
▷ Anonymous functions | 33 | 5.81% |
Constants | 37 | |
▷ Global constants | 15 | 40.54% |
▷ Class constants | 22 | 59.46% |
▷ Public constants | 20 | 90.91% |
Plugin size 50% from 2 tests
Image compression 50% from 2 tests
All PNG images should be compressed to minimize bandwidth usage for end users
43 PNG files occupy 0.86MB with 0.42MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
vendor/advanced-custom-fields/assets/images/field-type-previews/field-preview-checkbox.png | 12.59KB | 6.28KB | ▼ 50.12% |
vendor/advanced-custom-fields/assets/images/field-type-previews/field-preview-page-link.png | 9.63KB | 5.03KB | ▼ 47.77% |
vendor/advanced-custom-fields/assets/images/field-type-previews/field-preview-password.png | 11.38KB | 5.84KB | ▼ 48.68% |
vendor/advanced-custom-fields/assets/images/field-type-previews/field-preview-post-object.png | 9.57KB | 4.92KB | ▼ 48.64% |
vendor/advanced-custom-fields/assets/images/field-type-previews/field-preview-time.png | 10.38KB | 5.59KB | ▼ 46.14% |