Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | The install procedure must perform silently
The plugin installed gracefully, with no errors
Server metrics [RAM: ▲1.67MB] [CPU: ▲9.49ms] Passed 4 tests
Analyzing server-side resources used by WP Food Manager – Restaurant Menu & Online Food Ordering for WooCommerce - Food Delivery & Pickup - Table Reservation
Normal server usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.92 ▲1.45 | 51.61 ▲9.06 |
Dashboard /wp-admin | 5.02 ▲1.71 | 62.63 ▲12.42 |
Posts /wp-admin/edit.php | 5.14 ▲1.78 | 67.07 ▲11.41 |
Add New Post /wp-admin/post-new.php | 7.98 ▲2.09 | 107.68 ▲5.06 |
Media Library /wp-admin/upload.php | 4.96 ▲1.72 | 65.21 ▲30.56 |
Ingredients /wp-admin/edit-tags.php?taxonomy=food_manager_ingredient&post_type=food_manager | 4.98 | 57.45 |
Toppings /wp-admin/edit-tags.php?taxonomy=food_manager_topping&post_type=food_manager | 4.98 | 63.31 |
Types /wp-admin/edit-tags.php?taxonomy=food_manager_type&post_type=food_manager | 5.00 | 57.55 |
Tags /wp-admin/edit-tags.php?taxonomy=food_manager_tag&post_type=food_manager | 4.96 | 51.00 |
Add Food /wp-admin/post-new.php?post_type=food_manager | 5.52 | 90.56 |
Setup /wp-admin/index.php?page=food_manager_setup | 4.93 | 57.98 |
Settings /wp-admin/edit.php?post_type=food_manager&page=food-manager-settings | 4.95 | 53.33 |
Categories /wp-admin/edit-tags.php?taxonomy=food_manager_category&post_type=food_manager | 5.00 | 57.35 |
All Foods /wp-admin/edit.php?post_type=food_manager | 5.05 | 55.53 |
Menus /wp-admin/edit.php?post_type=food_manager_menu | 5.03 | 50.54 |
Server storage [IO: ▲2.99MB] [DB: ▲0.02MB] Passed 3 tests
Input-output and database impact of this plugin
There were no storage issued detected upon installing this plugin
Filesystem: 179 new files
Database: no new tables, 38 new options
New WordPress options |
---|
wpfm_price_num_decimals |
food_manager_food_dashboard_page_id |
food_manager_unit_children |
wpfm_price_decimal_sep |
food_manager_enable_food_types |
food_manager_enable_default_food_menu_multiselect |
wpfm_currency_pos |
food_manager_ingredient_children |
food_manager_enable_registration |
food_manager_nutrition_children |
... |
Browser metrics Passed 4 tests
Checking browser requirements for WP Food Manager – Restaurant Menu & Online Food Ordering for WooCommerce - Food Delivery & Pickup - Table Reservation
Normal browser usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,261 ▲526 | 17.25 ▲2.89 | 18.99 ▲16.65 | 36.80 ▼13.01 |
Dashboard /wp-admin | 2,304 ▲122 | 6.81 ▲1.88 | 116.89 ▲3.05 | 102.30 ▲59.84 |
Posts /wp-admin/edit.php | 2,361 ▲272 | 3.55 ▲1.55 | 50.67 ▲8.95 | 36.74 ▼0.47 |
Add New Post /wp-admin/post-new.php | 1,755 ▲241 | 22.87 ▲5.34 | 776.85 ▲144.44 | 37.63 ▼14.51 |
Media Library /wp-admin/upload.php | 1,642 ▲257 | 5.35 ▲1.10 | 121.92 ▲16.37 | 103.23 ▲54.65 |
Ingredients /wp-admin/edit-tags.php?taxonomy=food_manager_ingredient&post_type=food_manager | 2,042 | 3.56 | 62.64 | 93.70 |
Toppings /wp-admin/edit-tags.php?taxonomy=food_manager_topping&post_type=food_manager | 2,081 | 3.57 | 42.73 | 76.84 |
Types /wp-admin/edit-tags.php?taxonomy=food_manager_type&post_type=food_manager | 1,940 | 4.75 | 56.65 | 97.22 |
Tags /wp-admin/edit-tags.php?taxonomy=food_manager_tag&post_type=food_manager | 1,511 | 3.45 | 40.89 | 60.67 |
Add Food /wp-admin/post-new.php?post_type=food_manager | 3,286 | 7.88 | 206.24 | 172.72 |
Setup /wp-admin/index.php?page=food_manager_setup | 1,106 | 3.33 | 41.08 | 46.61 |
Settings /wp-admin/edit.php?post_type=food_manager&page=food-manager-settings | 2,546 | 3.41 | 47.69 | 69.21 |
Categories /wp-admin/edit-tags.php?taxonomy=food_manager_category&post_type=food_manager | 2,051 | 4.85 | 54.06 | 98.35 |
All Foods /wp-admin/edit.php?post_type=food_manager | 1,464 | 3.74 | 47.55 | 59.59 |
Menus /wp-admin/edit.php?post_type=food_manager_menu | 1,346 | 3.63 | 44.04 | 58.81 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.02MB] 75% from 4 tests
🔸 Tests weight: 35 | It is important to correctly uninstall your plugin, without leaving any traces
The following items require your attention
- This plugin did not uninstall successfully, leaving 18 options in the database
- widget_recent-posts
- wpfm_currency
- food_manager_nutrition_children
- can_compress_scripts
- widget_recent-comments
- food_manager_registration_role
- wpfm_price_decimal_sep
- food_manager_type_children
- food_manager_ingredient_children
- food_manager_category_children
- ...
Smoke tests 50% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
Everything seems fine, however this is by no means an exhaustive test
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 items
- 1× PHP files output non-empty strings when accessed directly via GET requests:
- > /wp-content/plugins/wp-food-manager/templates/food-listings-end.php
- 65× GET requests to PHP files have triggered server-side errors or warnings (only 10 are shown):
- > PHP Warning
Invalid argument supplied for foreach() in wp-content/plugins/wp-food-manager/templates/form-fields/checkbox-field.php on line 11
- > PHP Notice
Undefined variable: field in wp-content/plugins/wp-food-manager/templates/form-fields/radio-field.php on line 26
- > PHP Fatal error
Uncaught Error: Call to undefined function wpfm_begnWith() in wp-content/plugins/wp-food-manager/templates/form-fields/textarea-field.php:10
- > PHP Fatal error
Uncaught Error: Call to undefined function get_the_post_thumbnail_url() in wp-content/plugins/wp-food-manager/templates/content-single-food_manager_menu.php:3
- > PHP Fatal error
Uncaught Error: Call to undefined function get_object_taxonomies() in wp-content/plugins/wp-food-manager/admin/wpfm-field-editor-group-form-field.php:4
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_attr() in wp-content/plugins/wp-food-manager/templates/food-submitted.php:4
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_attr() in wp-content/plugins/wp-food-manager/templates/form-fields/text-field.php:30
- > PHP Notice
Trying to access array offset on value of type null in wp-content/plugins/wp-food-manager/templates/form-fields/button-options-field.php on line 17
- > PHP Notice
Undefined variable: child_index in wp-content/plugins/wp-food-manager/admin/wpfm-field-editor-group-form-field.php on line 2
- > PHP Fatal error
Uncaught Error: Call to undefined function wp_enqueue_script() in wp-content/plugins/wp-food-manager/templates/form-fields/term-multiselect-field.php:12
- > PHP Warning
User-side errors Passed 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
No browser errors were detected
Optimizations
Plugin configuration 93% from 29 tests
readme.txt 94% from 16 tests
Often overlooked, readme.txt is one of the most important files in your plugin
These attributes need your attention:
- Tags: You are using too many tags: 11 tag instead of maximum 10
wp-food-manager/wp-food-manager.php 92% from 13 tests
The entry point to "WP Food Manager – Restaurant Menu & Online Food Ordering for WooCommerce - Food Delivery & Pickup - Table Reservation" version 1.0.4 is a PHP file that has certain tags in its header comment area
Please make the necessary changes and fix the following:
- Domain Path: The domain path folder does not exist ("/languages")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | This is a short overview of programming languages used in this plugin, detecting executable files
Good job! No executable or dangerous file extensions detected26,969 lines of code in 153 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 79 | 1,206 | 3,366 | 11,371 |
CSS | 18 | 856 | 130 | 7,599 |
JavaScript | 38 | 3,583 | 931 | 6,574 |
SVG | 13 | 1 | 9 | 1,002 |
Sass | 2 | 27 | 5 | 262 |
LESS | 1 | 11 | 5 | 152 |
Ruby | 1 | 2 | 0 | 8 |
JSON | 1 | 0 | 0 | 1 |
PHP code Passed 2 tests
An short overview of logical lines of code, cyclomatic complexity, and other code metrics
This plugin has no cyclomatic complexity problems
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.52 |
Average class complexity | 47.64 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 324.00 |
Average method complexity | 4.70 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 48.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 22 | |
▷ Abstract classes | 1 | 4.55% |
▷ Concrete classes | 21 | 95.45% |
▷ Final classes | 0 | 0.00% |
Methods | 248 | |
▷ Static methods | 64 | 25.81% |
▷ Public methods | 208 | 83.87% |
▷ Protected methods | 18 | 7.26% |
▷ Private methods | 22 | 8.87% |
Functions | 92 | |
▷ Named functions | 88 | 95.65% |
▷ Anonymous functions | 4 | 4.35% |
Constants | 6 | |
▷ Global constants | 4 | 66.67% |
▷ Class constants | 2 | 33.33% |
▷ Public constants | 2 | 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
14 PNG files occupy 0.05MB with 0.01MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/css/jquery-ui/images/ui-icons_777620_256x240.png | 4.44KB | 4.17KB | ▼ 6.02% |
assets/images/support-page-sprites-img.png | 6.58KB | 6.21KB | ▼ 5.55% |
assets/images/organizer.png | 2.99KB | 1.53KB | ▼ 48.79% |
assets/images/chosen-sprite@2x.png | 0.85KB | 0.83KB | ▼ 3.10% |
assets/images/wpfm-non-veg-organic.png | 0.44KB | 0.33KB | ▼ 24.67% |