Benchmarks
Plugin footprint 40% from 16 tests
Installer 0% from 1 test
🔺 Critical test (weight: 50) | The install procedure must perform silently
It is recommended to fix the following installer errors
- Install procedure validation failed for this plugin
- > User deprecated in wp-includes/functions.php+5453
Function get_page_by_title is deprecated since version 6.2.0! Use WP_Query instead.
Server metrics [RAM: ▲1.03MB] [CPU: ▲8.69ms] Passed 4 tests
Server-side resources used by WP Delicious - Best WordPress Recipes Plugin (formerly Delicious Recipes)
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.57 ▲1.11 | 50.45 ▲12.72 |
Dashboard /wp-admin | 4.33 ▲1.03 | 80.32 ▲30.68 |
Posts /wp-admin/edit.php | 4.36 ▲1.00 | 53.24 ▲3.99 |
Add New Post /wp-admin/post-new.php | 7.21 ▲1.32 | 95.59 ▲8.78 |
Media Library /wp-admin/upload.php | 4.22 ▲0.99 | 39.85 ▲9.26 |
Courses /wp-admin/edit-tags.php?taxonomy=recipe-course&post_type=recipe | 4.26 | 42.45 |
Tags /wp-admin/edit-tags.php?taxonomy=recipe-tag&post_type=recipe | 4.26 | 47.81 |
Settings /wp-admin/admin.php?page=delicious_recipes_global_settings | 4.28 | 45.34 |
Freemius Debug [v.2.5.10] /wp-admin/admin.php?page=freemius | 4.58 | 40.20 |
Recipe Badges /wp-admin/edit-tags.php?taxonomy=recipe-badge&post_type=recipe | 4.26 | 44.81 |
All Recipes /wp-admin/edit.php?post_type=recipe | 4.44 | 60.78 |
Cuisines /wp-admin/edit-tags.php?taxonomy=recipe-cuisine&post_type=recipe | 4.26 | 45.47 |
Add New /wp-admin/post-new.php?post_type=recipe | 7.27 | 97.41 |
Cooking Methods /wp-admin/edit-tags.php?taxonomy=recipe-cooking-method&post_type=recipe | 4.26 | 44.95 |
What's New /wp-admin/admin.php?page=delicious_recipes_whats_new | 4.27 | 43.32 |
Server storage [IO: ▲13.71MB] [DB: ▲0.10MB] Passed 3 tests
Filesystem and database footprint
The plugin installed successfully
Filesystem: 554 new files
Database: no new tables, 19 new options
New WordPress options |
---|
delicious_recipes_recipe-dashboard_page_id |
widget_delicious_popular_recipes_widget |
theysaidso_admin_options |
widget_delicious_popular_tags_widget |
delicious_recipes_recipe-search_page_id |
widget_delicious_featured_recipes_widget |
fs_debug_mode |
widget_delicious_recipe_categories_widget |
delicious_recipes_queue_flush_rewrite_rules |
widget_theysaidso_widget |
... |
Browser metrics Passed 4 tests
A check of browser resources used by WP Delicious - Best WordPress Recipes Plugin (formerly Delicious Recipes)
This plugin renders optimally with no browser resource issues detected
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,182 ▲420 | 19.74 ▲5.30 | 127.11 ▲125.47 | 36.45 ▼7.51 |
Dashboard /wp-admin | 2,368 ▲190 | 5.67 ▼0.07 | 92.69 ▼24.24 | 42.83 ▼3.96 |
Posts /wp-admin/edit.php | 2,271 ▲168 | 2.03 ▲0.03 | 42.42 ▲2.50 | 40.91 ▲4.01 |
Add New Post /wp-admin/post-new.php | 6,300 ▲4,773 | 19.92 ▼3.32 | 869.22 ▲185.82 | 58.30 ▲7.92 |
Media Library /wp-admin/upload.php | 1,610 ▲207 | 4.36 ▲0.15 | 100.85 ▲3.80 | 45.85 ▲4.54 |
Courses /wp-admin/edit-tags.php?taxonomy=recipe-course&post_type=recipe | 2,828 | 1.64 | 39.23 | 49.89 |
Tags /wp-admin/edit-tags.php?taxonomy=recipe-tag&post_type=recipe | 3,610 | 2.43 | 31.53 | 40.08 |
Settings /wp-admin/admin.php?page=delicious_recipes_global_settings | 3,768 | 13.47 | 339.00 | 45.47 |
Freemius Debug [v.2.5.10] /wp-admin/admin.php?page=freemius | 1,225 | 1.68 | 24.20 | 27.56 |
Recipe Badges /wp-admin/edit-tags.php?taxonomy=recipe-badge&post_type=recipe | 3,608 | 2.28 | 30.30 | 40.00 |
All Recipes /wp-admin/edit.php?post_type=recipe | 2,796 | 7.20 | 89.05 | 32.91 |
Cuisines /wp-admin/edit-tags.php?taxonomy=recipe-cuisine&post_type=recipe | 3,635 | 2.29 | 29.13 | 37.07 |
Add New /wp-admin/post-new.php?post_type=recipe | 7,557 | 26.33 | 983.33 | 57.81 |
Cooking Methods /wp-admin/edit-tags.php?taxonomy=recipe-cooking-method&post_type=recipe | 3,632 | 2.43 | 30.07 | 41.70 |
What's New /wp-admin/admin.php?page=delicious_recipes_whats_new | 3,379 | 11.10 | 102.32 | 67.50 |
Uninstaller [IO: ▲0.30MB] [DB: ▲0.10MB] 50% from 4 tests
🔸 Tests weight: 35 | It is important to correctly uninstall your plugin, without leaving any traces
Please fix the following items
- Uninstall procedure validation failed for this plugin
- > Notice in wp-content/plugins/delicious-recipes/src/lib/freemius/includes/class-freemius.php+8486
Undefined property: stdClass::$plugins
- This plugin does not fully uninstall, leaving 19 options in the database
- can_compress_scripts
- fs_accounts
- delicious_recipes_recipe-dashboard_page_id
- fs_active_plugins
- widget_recent-comments
- widget_theysaidso_widget
- widget_delicious_popular_tags_widget
- delicious_recipes_demo_imports
- widget_delicious_popular_recipes_widget
- theysaidso_admin_options
- ...
Smoke tests 25% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | This is a short smoke test looking for server-side errors
Good news, no errors were detected
SRP 0% from 2 tests
🔹 Tests weight: 20 | The single-responsibility principle: PHP files have to remain inert when accessed directly, throwing no errors and performing no actions
Please fix the following
- 1× PHP files perform the task of outputting text when accessed with GET requests:
- > /wp-content/plugins/delicious-recipes/templates/emails/email-footer.php
- 94× GET requests to PHP files trigger server-side errors or Error 500 responses (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Call to undefined function delicious_recipes_get_global_settings() in wp-content/plugins/delicious-recipes/templates/recipe/recipe-share.php:9
- > PHP Fatal error
Uncaught Error: Call to undefined function post_password_required() in wp-content/plugins/delicious-recipes/templates/global/comments.php:18
- > PHP Fatal error
Uncaught Error: Call to undefined function delicious_recipes_get_global_settings() in wp-content/plugins/delicious-recipes/templates/archive/header.php:7
- > PHP Fatal error
Uncaught Error: Call to undefined function _nx() in wp-content/plugins/delicious-recipes/templates/recipe/recipe-like.php:7
- > PHP Fatal error
Uncaught Error: Call to undefined function get_header() in wp-content/plugins/delicious-recipes/templates/pages/recipe-courses.php:5
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_url() in wp-content/plugins/delicious-recipes/src/admin/partials/dr-import-recipe-screen.php:6
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/delicious-recipes/templates/emails/email-header.php:6
- > PHP Fatal error
Uncaught Error: Call to undefined function get_categories() in wp-content/plugins/delicious-recipes/templates/global/search/filter-recipe-type.php:5
- > PHP Fatal error
Uncaught Error: Call to undefined function delicious_recipes_get_template() in wp-content/plugins/delicious-recipes/templates/taxonomy-recipe-tag.php:5
- > PHP Fatal error
Uncaught Error: Call to undefined function delicious_recipes_get_nutrition_facts() in wp-content/plugins/delicious-recipes/templates/recipe/recipe-block/nutrition.php:7
- > PHP Fatal error
User-side errors 0% from 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
Please take a look at the following user-side issues
- 2 occurences, only the last one shown
- > GET request to /wp-admin/admin.php?page=delicious_recipes_global_settings
- > Network (severe)
/wp-json/wp/v2/pages?per_page=100 - Failed to load resource: the server responded with a status of 404 (Not Found)
- 4 occurences, only the last one shown
- > GET request to /wp-admin/admin.php?page=delicious_recipes_global_settings
- > Javascript (severe) in unknown
/wp-content/plugins/delicious-recipes/assets/build/global.js?ver=9ccde02aa392911d223737a7144a59c7 0:6241
- > GET request to /wp-admin/admin.php?page=delicious_recipes_global_settings
- > Network (severe)
/wp-json/wp/v2/users - Failed to load resource: the server responded with a status of 404 (Not Found)
- > GET request to /wp-admin/admin.php?page=delicious_recipes_global_settings
- > Network (severe)
/wp-json/deliciousrecipe/v1/recipe-global - Failed to load resource: the server responded with a status of 404 (Not Found)
- > GET request to /wp-admin/post-new.php?post_type=recipe
- > Network (severe)
/wp-json/deliciousrecipe/v1/recipe/22 - Failed to load resource: the server responded with a status of 404 (Not Found)
- > GET request to /wp-admin/post-new.php?post_type=recipe
- > Javascript (severe) in unknown
/wp-content/plugins/delicious-recipes/assets/build/recipe.js?ver=a396512bbbc8767bf0f50ebe07c62dd3 0:6241
Optimizations
Plugin configuration 96% from 29 tests
readme.txt Passed 16 tests
Don't ignore readme.txt as it is the file that instructs WordPress.org on how to present your plugin to the world
6 plugin tags: cooking, ingredients, recipe, food, recipes...
delicious-recipes/delicious-recipes.php 92% from 13 tests
The entry point to "WP Delicious - Best WordPress Recipes Plugin (formerly Delicious Recipes)" version 1.5.6 is a PHP file that has certain tags in its header comment area
Please take the time to fix the following:
- Description: If Twitter did it, so should we! Keep the description under 140 characters (currently 144 characters long)
Code Analysis 97% from 3 tests
File types Passed 1 test
🔸 Test weight: 35 | This is an overview of programming languages used in this plugin; dangerous file extensions are not allowed
Good job! No executable or dangerous file extensions detected98,595 lines of code in 445 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 294 | 11,718 | 23,124 | 53,019 |
CSS | 50 | 2,465 | 386 | 18,512 |
JavaScript | 49 | 2,459 | 7,747 | 13,866 |
SVG | 11 | 0 | 12 | 5,221 |
JSON | 36 | 0 | 0 | 4,502 |
PO File | 1 | 1,057 | 2,527 | 2,211 |
Sass | 2 | 52 | 1 | 748 |
XML | 1 | 0 | 0 | 302 |
Markdown | 1 | 68 | 0 | 214 |
PHP code 50% from 2 tests
This is a very shot review of cyclomatic complexity and code structure
It is recommended to fix the following
- Cyclomatic complexity of classes has to be reduced to less than 1000 (currently 3,073)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.60 |
Average class complexity | 64.44 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 3,073.00 |
Average method complexity | 4.57 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 99.00 |
Code structure | ||
---|---|---|
Namespaces | 3 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 102 | |
▷ Abstract classes | 3 | 2.94% |
▷ Concrete classes | 99 | 97.06% |
▷ Final classes | 2 | 2.02% |
Methods | 1,800 | |
▷ Static methods | 327 | 18.17% |
▷ Public methods | 1,322 | 73.44% |
▷ Protected methods | 29 | 1.61% |
▷ Private methods | 449 | 24.94% |
Functions | 230 | |
▷ Named functions | 214 | 93.04% |
▷ Anonymous functions | 16 | 6.96% |
Constants | 157 | |
▷ Global constants | 110 | 70.06% |
▷ Class constants | 47 | 29.94% |
▷ Public constants | 47 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
All PNG images should be compressed to minimize bandwidth usage for end users
31 PNG files occupy 0.34MB with 0.06MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/images/pinit-sm.png | 1.10KB | 0.83KB | ▼ 24.53% |
assets/images/print-img/youtube.png | 0.60KB | 0.36KB | ▼ 39.67% |
assets/public/images/dr-share-bg.png | 30.19KB | 31.12KB | 0.00% |
assets/images/print-img/snapchat.png | 0.71KB | 0.53KB | ▼ 25.65% |
assets/lib/datatables/DataTables-1.10.22/images/sort_both.png | 0.20KB | 0.29KB | 0.00% |