Benchmarks
Plugin footprint 65% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
The plugin installed gracefully, with no errors
Server metrics [RAM: ▲0.02MB] [CPU: ▼5.76ms] Passed 4 tests
Server-side resources used by Woo File Dropzone
Normal server usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.49 ▲0.03 | 39.49 ▼0.98 |
Dashboard /wp-admin | 3.32 ▲0.02 | 48.76 ▼7.34 |
Posts /wp-admin/edit.php | 3.37 ▲0.01 | 50.15 ▲0.26 |
Add New Post /wp-admin/post-new.php | 5.91 ▲0.02 | 90.92 ▼14.99 |
Media Library /wp-admin/upload.php | 3.25 ▲0.02 | 38.36 ▲3.98 |
Woo File Dropzone /wp-admin/options-general.php?page=woo-file-dropzone-options | 3.31 | 32.04 |
Server storage [IO: ▲1.27MB] [DB: ▲0.07MB] Passed 3 tests
A short overview of filesystem and database impact
The plugin installed successfully
Filesystem: 80 new files
Database: 1 new table, 6 new options
New tables |
---|
wp_woo_file_dropzone |
New WordPress options |
---|
db_upgraded |
widget_recent-comments |
can_compress_scripts |
widget_theysaidso_widget |
theysaidso_admin_options |
widget_recent-posts |
Browser metrics Passed 4 tests
A check of browser resources used by Woo File Dropzone
Minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,820 ▲59 | 14.66 ▲0.50 | 1.81 ▲0.21 | 43.87 ▲3.32 |
Dashboard /wp-admin | 2,201 ▲21 | 5.68 ▲0.06 | 89.86 ▼0.70 | 37.62 ▼8.21 |
Posts /wp-admin/edit.php | 2,109 ▲9 | 2.06 ▲0.03 | 38.97 ▲2.37 | 34.73 ▼0.14 |
Add New Post /wp-admin/post-new.php | 1,533 ▲5 | 23.07 ▲0.03 | 696.40 ▲48.70 | 67.50 ▲17.04 |
Media Library /wp-admin/upload.php | 1,397 ▼3 | 4.33 ▲0.14 | 102.21 ▼6.48 | 43.11 ▼3.64 |
Woo File Dropzone /wp-admin/options-general.php?page=woo-file-dropzone-options | 1,246 | 2.78 | 43.16 | 30.23 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.07MB] 50% from 4 tests
🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
It is recommended to fix the following
- The uninstall procedure failed, leaving 1 table in the database
- wp_woo_file_dropzone
- The uninstall procedure has failed, leaving 6 options in the database
- theysaidso_admin_options
- can_compress_scripts
- widget_recent-posts
- widget_theysaidso_widget
- db_upgraded
- widget_recent-comments
Smoke tests 25% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | This is a short smoke test looking for server-side errors
These errors were triggered by the plugin
- > GET request to /wp-admin/options-general.php?page=woo-file-dropzone-options
- > Notice in wp-content/plugins/woo-file-dropzone/views/options.php+33
Undefined variable: isFileUploadMandatory
SRP 50% 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
- 12× PHP files output text when accessed directly (only 10 are shown):
- > /wp-content/plugins/woo-file-dropzone/views/product-detail-page.php
- > /wp-content/plugins/woo-file-dropzone/woo-file-dropzone.php
- > /wp-content/plugins/woo-file-dropzone/helpers/Helper_LoggerWooFileDropzone.php
- > /wp-content/plugins/woo-file-dropzone/models/Model_WooFileDropzone.php
- > /wp-content/plugins/woo-file-dropzone/views/cart-page.php
- > /wp-content/plugins/woo-file-dropzone/views/checkout-page.php
- > /wp-content/plugins/woo-file-dropzone/controllers/Controller_UserWooFileDropzone.php
- > /wp-content/plugins/woo-file-dropzone/controllers/Controller_AdminWooFileDropzone.php
- > /wp-content/plugins/woo-file-dropzone/views/admin-order-detail.php
- > /wp-content/plugins/woo-file-dropzone/helpers/Helper_WooFileDropzone.php
User-side errors 0% from 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
These are user-side errors you should fix
- > GET request to /wp-admin/options-general.php?page=woo-file-dropzone-options
- > Javascript (severe) in unknown
/wp-content/plugins/woo-file-dropzone/assets/js/form-validator/security.js 8:7872 Uncaught TypeError: Cannot read properties of undefined (reading 'validationConfig')
Optimizations
Plugin configuration Passed 29 tests
readme.txt Passed 16 tests
The readme.txt file is undoubtedly the most important file in your plugin, preparing it for public listing on WordPress.org
8 plugin tags: woocommerce upload file, upload files, woocommerce file uploader, gmbhurgri, file upload...
woo-file-dropzone/woo-file-dropzone.php Passed 13 tests
Analyzing the main PHP file in "Woo File Dropzone" version 1.1.7
46 characters long description:
It enhance woocommerce store to receive files.
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | Executable files are considered dangerous and should not be included with any WordPress plugin
No dangerous file extensions were detected18,525 lines of code in 69 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
CSS | 7 | 1,500 | 46 | 7,643 |
JavaScript | 33 | 652 | 2,683 | 5,121 |
PHP | 14 | 503 | 485 | 2,885 |
CoffeeScript | 3 | 825 | 349 | 2,236 |
Sass | 2 | 100 | 36 | 355 |
Markdown | 3 | 81 | 0 | 141 |
JSON | 4 | 0 | 0 | 101 |
HTML | 1 | 3 | 0 | 19 |
Bourne Shell | 1 | 1 | 0 | 14 |
YAML | 1 | 0 | 0 | 10 |
PHP code Passed 2 tests
An overview of cyclomatic complexity and code structure
No cyclomatic complexity issues were detected for this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.45 |
Average class complexity | 28.67 |
▷ Minimum class complexity | 3.00 |
▷ Maximum class complexity | 91.00 |
Average method complexity | 3.27 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 24.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 6 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 6 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 73 | |
▷ Static methods | 5 | 6.85% |
▷ Public methods | 58 | 79.45% |
▷ Protected methods | 15 | 20.55% |
▷ Private methods | 0 | 0.00% |
Functions | 5 | |
▷ Named functions | 3 | 60.00% |
▷ Anonymous functions | 2 | 40.00% |
Constants | 8 | |
▷ Global constants | 7 | 87.50% |
▷ Class constants | 1 | 12.50% |
▷ Public constants | 1 | 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
2 compressed PNG files occupy 0.00MB
Potential savings
Compression of 2 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/delete-icon.png | 0.55KB | 0.68KB | 0.00% |
assets/download-icon.png | 0.57KB | 0.41KB | ▼ 29.42% |