Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | All plugins must install correctly, without throwing any errors, warnings, or notices
Installer ran successfully
Server metrics [RAM: ▲0.10MB] [CPU: ▼6.34ms] Passed 4 tests
Server-side resources used by TourSys Connect
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.57 ▲0.10 | 60.52 ▲15.48 |
Dashboard /wp-admin | 3.41 ▲0.10 | 47.12 ▼7.42 |
Posts /wp-admin/edit.php | 3.46 ▲0.10 | 51.32 ▼0.82 |
Add New Post /wp-admin/post-new.php | 6.01 ▲0.12 | 87.46 ▼17.35 |
Media Library /wp-admin/upload.php | 3.33 ▲0.10 | 37.04 ▲0.24 |
Settings /wp-admin/admin.php?page=toursys-slug | 3.35 | 35.05 |
FAQ /wp-admin/admin.php?page=toursys-slug-faq | 3.30 | 31.87 |
How to Use /wp-admin/admin.php?page=toursys-slug-setting | 3.34 | 33.47 |
Server storage [IO: ▲1.54MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
There were no storage issued detected upon installing this plugin
Filesystem: 59 new files
Database: no new tables, 6 new options
New WordPress options |
---|
widget_recent-posts |
theysaidso_admin_options |
widget_theysaidso_widget |
db_upgraded |
widget_recent-comments |
can_compress_scripts |
Browser metrics Passed 4 tests
TourSys Connect: an overview of browser usage
Normal browser usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,028 ▲267 | 14.54 ▼0.02 | 14.73 ▲13.01 | 44.16 ▼2.79 |
Dashboard /wp-admin | 2,258 ▲78 | 5.80 ▲0.13 | 89.91 ▼11.93 | 105.32 ▲63.08 |
Posts /wp-admin/edit.php | 2,163 ▲63 | 2.31 ▲0.28 | 39.83 ▲0.45 | 89.65 ▲54.15 |
Add New Post /wp-admin/post-new.php | 1,735 ▲207 | 22.66 ▼0.46 | 643.62 ▼50.45 | 68.64 ▲14.88 |
Media Library /wp-admin/upload.php | 1,464 ▲67 | 4.57 ▲0.36 | 103.59 ▲8.03 | 114.17 ▲67.26 |
Settings /wp-admin/admin.php?page=toursys-slug | 1,846 | 2.92 | 45.74 | 64.39 |
FAQ /wp-admin/admin.php?page=toursys-slug-faq | 947 | 2.10 | 26.70 | 67.70 |
How to Use /wp-admin/admin.php?page=toursys-slug-setting | 1,531 | 2.37 | 34.04 | 90.15 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | It is important to correctly uninstall your plugin, without leaving any traces
You still need to fix the following
- The uninstall procedure has failed, leaving 6 options in the database
- db_upgraded
- can_compress_scripts
- widget_recent-posts
- theysaidso_admin_options
- widget_recent-comments
- widget_theysaidso_widget
Smoke tests 0% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
Please fix the following server-side errors
- 6 occurences, only the last one shown
- > GET request to /wp-admin/admin.php?page=toursys-slug-faq
- > Notice in wp-content/plugins/toursys-connect/admin/views/faq.php+74
Undefined variable: textColor
- 2 occurences, only the last one shown
- > GET request to /wp-admin/admin.php?page=toursys-slug-faq
- > Notice in wp-content/plugins/toursys-connect/admin/views/faq.php+77
Undefined variable: backgroundColor
SRP 0% 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
Please fix the following items
- 3× PHP files output text when accessed directly:
- > /wp-content/plugins/toursys-connect/toursys-plugin.php
- > /wp-content/plugins/toursys-connect/public/components/tour_booking_form.php
- > /wp-content/plugins/toursys-connect/includes/shortcode.php
- 11× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/toursys-connect/includes/shortcode.php:7
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/toursys-connect/admin/views/setting.php:44
- > PHP Fatal error
Uncaught Error: Call to undefined function plugin_dir_url() in wp-content/plugins/toursys-connect/admin/views/faq.php:14
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/toursys-connect/public/components/transfer_booking_form.php:2
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/toursys-connect/public/components/tour_booking_form.php:6
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/toursys-connect/public/components/tour_booking_button.php:5
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/toursys-connect/includes/shortcode.php:7
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/toursys-connect/public/components/package_booking_button.php:4
- > PHP Fatal error
Uncaught Error: Call to undefined function plugin_dir_url() in wp-content/plugins/toursys-connect/admin/views/how-to-use.php:15
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/toursys-connect/public/components/transfer_booking_button.php:3
- > PHP Fatal error
User-side errors 0% from 1 test
🔹 Test weight: 20 | A shallow check that no browser errors were triggered
Please fix the following user-side errors
- 3 occurences, only the last one shown
- > GET request to /wp-admin/admin.php?page=toursys-slug-setting
- > Javascript (severe) in unknown
/wp-content/plugins/toursys-connect/admin/js/huebee.pkgd.min.js?ver=6.3.1 21:367 Uncaught Error: Bad element for Huebee: null
- > GET request to /wp-admin/admin.php?page=toursys-slug
- > Rendering (warning) in unknown
/wp-content/plugins/toursys-connect/admin/js/huebee.pkgd.min.js?ver=6.3.1 21 Canvas2D: Multiple readback operations using getImageData are faster with the willReadFrequently attribute set to true. See: https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently
Optimizations
Plugin configuration 96% from 29 tests
readme.txt Passed 16 tests
The readme.txt file is important because it is parsed by WordPress.org for the public listing of your plugin
7 plugin tags: reservation, booking system, booking, online booking, travel agency...
toursys-connect/toursys-plugin.php 92% from 13 tests
The main PHP script in "TourSys Connect" version 1.3.0 is automatically included on every request by WordPress
Please take the time to fix the following:
- Main file name: The principal plugin file should be the same as the plugin slug ("toursys-connect.php" instead of "toursys-plugin.php")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short check of programming languages and file extensions; no executable files are allowed
Everything looks great! No dangerous files found in this plugin5,633 lines of code in 26 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
CSS | 8 | 664 | 55 | 3,775 |
PHP | 14 | 364 | 99 | 1,697 |
JavaScript | 4 | 62 | 46 | 161 |
PHP code Passed 2 tests
Analyzing cyclomatic complexity and code structure
Everything seems fine, there were no complexity issues found
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.30 |
Average class complexity | 4.00 |
▷ Minimum class complexity | 4.00 |
▷ Maximum class complexity | 4.00 |
Average method complexity | 1.33 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 3.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 1 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 1 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 9 | |
▷ Static methods | 2 | 22.22% |
▷ Public methods | 9 | 100.00% |
▷ Protected methods | 0 | 0.00% |
▷ Private methods | 0 | 0.00% |
Functions | 9 | |
▷ Named functions | 9 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 9 | |
▷ Global constants | 0 | 0.00% |
▷ Class constants | 9 | 100.00% |
▷ Public constants | 9 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
Using a strong compression for your PNG files is a great way to speed-up your plugin
22 PNG files occupy 0.42MB with 0.18MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
public/images/example-setting.png | 43.07KB | 12.50KB | ▼ 70.98% |
admin/css/images/ui-icons_ffffff_256x240.png | 6.17KB | 4.18KB | ▼ 32.17% |
admin/css/images/ui-icons_777777_256x240.png | 6.85KB | 4.18KB | ▼ 38.94% |
public/css/images/ui-icons_777777_256x240.png | 6.85KB | 4.18KB | ▼ 38.94% |
admin/css/images/ui-icons_444444_256x240.png | 6.84KB | 4.18KB | ▼ 38.90% |