Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
Installer ran successfully
Server metrics [RAM: ▲1.83MB] [CPU: ▼174.91ms] Passed 4 tests
An overview of server-side resources used by Translate by Supsystic
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.75 ▲1.91 | 42.02 ▲16.64 |
Dashboard /wp-admin | 5.03 ▲1.96 | 56.47 ▲13.90 |
Posts /wp-admin/edit.php | 5.08 ▲1.97 | 46.05 ▲9.79 |
Add New Post /wp-admin/post-new.php | 6.93 ▲1.49 | 76.06 ▼733.46 |
Media Library /wp-admin/upload.php | 4.97 ▲1.97 | 36.10 ▲10.12 |
Settings /wp-admin/admin.php?page=translate-by-supsystic&tab=settings | 5.05 | 41.17 |
Featured Plugins /wp-admin/admin.php?page=translate-by-supsystic&tab=featured-plugins | 5.16 | 46.43 |
Translate by Supsystic /wp-admin/admin.php?page=translate-by-supsystic | 5.04 | 37.18 |
Overview /wp-admin/admin.php?page=translate-by-supsystic&tab=overview | 5.16 | 35.75 |
Server storage [DB: ▲0.05MB] Passed 3 tests
Input-output and database impact of this plugin
The plugin installed successfully
Filesystem: no files
Database: 3 new tables, 5 new options
New tables |
---|
wp_tbs_modules |
wp_tbs_modules_type |
wp_tbs_usage_stat |
New WordPress options |
---|
wp_tbs_db_version |
tbs_opts_data |
tbs_plugin_activation_errors |
widget_formswidgetwptbs |
wp_tbs_db_installed |
Browser metrics Passed 4 tests
Checking browser requirements for Translate by Supsystic
Normal browser usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,711 ▲110 | 15.67 ▼0.40 | 4.93 ▼3.70 | 76.07 ▲1.71 |
Dashboard /wp-admin | 2,979 ▲83 | 6.16 ▼0.15 | 113.54 ▼17.93 | 167.71 ▼4.96 |
Posts /wp-admin/edit.php | 2,786 ▲46 | 3.24 ▲0.02 | 69.83 ▲5.74 | 146.83 ▲5.52 |
Add New Post /wp-admin/post-new.php | 1,967 ▼1,739 | 21.11 ▲2.36 | 412.27 ▼23.82 | 164.87 ▼2.32 |
Media Library /wp-admin/upload.php | 1,795 ▲43 | 5.52 ▼0.01 | 148.83 ▲8.42 | 187.17 ▲1.94 |
Settings /wp-admin/admin.php?page=translate-by-supsystic&tab=settings | 3,504 | 6.24 | 114.58 | 301.03 |
Featured Plugins /wp-admin/admin.php?page=translate-by-supsystic&tab=featured-plugins | 2,520 | 5.33 | 107.86 | 304.28 |
Translate by Supsystic /wp-admin/admin.php?page=translate-by-supsystic | 3,514 | 6.11 | 113.97 | 203.96 |
Overview /wp-admin/admin.php?page=translate-by-supsystic&tab=overview | 2,099 | 5.27 | 92.54 | 208.74 |
Uninstaller [IO: ✅] [DB: ▲0.05MB] 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: 3 options
- tbs_plugin_activation_errors
- tbs_opts_data
- widget_formswidgetwptbs
Smoke tests 50% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
Smoke test failed, please fix the following
- 4 occurences, only the last one shown
- > GET request to /wp-admin/admin.php?page=translate-by-supsystic&tab=overview
- > User notice in wp-includes/functions.php+5663
WP_Scripts::localize was called incorrectly. The $l10n parameter must be an array. To pass arbitrary data to scripts, use the wp_add_inline_script() function instead. Please see Debugging in WordPress for more information. (This message was added in version 5.7.0.)
SRP 50% 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
The following issues need your attention
- 58× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'moduleTbs' not found in wp-content/plugins/translate-by-supsystic/modules/admin_nav/mod.php:2
- > PHP Fatal error
Uncaught Error: Class 'controllerTbs' not found in wp-content/plugins/translate-by-supsystic/modules/supsystic_promo/controller.php:2
- > PHP Fatal error
Uncaught Error: Class 'baseObjectTbs' not found in wp-content/plugins/translate-by-supsystic/classes/module.php:2
- > PHP Fatal error
Uncaught Error: Class 'moduleTbs' not found in wp-content/plugins/translate-by-supsystic/modules/user/mod.php:2
- > PHP Fatal error
Uncaught Error: Class 'controllerTbs' not found in wp-content/plugins/translate-by-supsystic/modules/admin_nav/controller.php:2
- > PHP Fatal error
Uncaught Error: Class 'viewTbs' not found in wp-content/plugins/translate-by-supsystic/modules/options/views/options.php:2
- > PHP Fatal error
Uncaught Error: Class 'moduleTbs' not found in wp-content/plugins/translate-by-supsystic/modules/templates/mod.php:2
- > PHP Fatal error
Uncaught Error: Class 'moduleTbs' not found in wp-content/plugins/translate-by-supsystic/modules/gmap/mod.php:2
- > PHP Fatal error
Uncaught Error: Call to undefined function _e() in wp-content/plugins/translate-by-supsystic/modules/supsystic_promo/views/tpl/adminFooter.php:4
- > PHP Warning
Use of undefined constant ABSPATH - assumed 'ABSPATH' (this will throw an Error in a future version of PHP) in wp-content/plugins/translate-by-supsystic/config.php on line 21
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
No browser issues were found
Optimizations
Plugin configuration 96% from 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
7 plugin tags: bilingual, language, multilingual, localization, multilanguage...
translate-by-supsystic/tbs.php 92% from 13 tests
The main PHP script in "Translate by Supsystic" version 1.2.5 is automatically included on every request by WordPress
Please take the time to fix the following:
- Main file name: Name the main plugin file the same as the plugin slug ("translate-by-supsystic.php" instead of "tbs.php")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | Executable files are not allowed as they can serve as attack vectors
Everything looks great! No dangerous files found in this plugin13,770 lines of code in 113 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 78 | 407 | 1,749 | 9,592 |
JavaScript | 15 | 133 | 329 | 2,229 |
CSS | 19 | 95 | 180 | 1,948 |
JSON | 1 | 0 | 0 | 1 |
PHP code Passed 2 tests
A brief analysis of cyclomatic complexity and code structure for this plugin
This plugin has no cyclomatic complexity issues
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.52 |
Average class complexity | 28.73 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 227.00 |
Average method complexity | 3.25 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 77.00 |
Code structure | ||
---|---|---|
Namespaces | 1 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 64 | |
▷ Abstract classes | 7 | 10.94% |
▷ Concrete classes | 57 | 89.06% |
▷ Final classes | 0 | 0.00% |
Methods | 788 | |
▷ Static methods | 246 | 31.22% |
▷ Public methods | 719 | 91.24% |
▷ Protected methods | 52 | 6.60% |
▷ Private methods | 17 | 2.16% |
Functions | 29 | |
▷ Named functions | 29 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 79 | |
▷ Global constants | 64 | 81.01% |
▷ Class constants | 15 | 18.99% |
▷ Public constants | 15 | 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
468 compressed PNG files occupy 0.51MB
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
modules/lang/flags/24/gd.png | 1.13KB | 1.01KB | ▼ 10.95% |
modules/lang/flags/16/tr.png | 0.56KB | 0.54KB | ▼ 3.83% |
modules/lang/flags/16/hmn.png | 0.46KB | 0.46KB | 0.00% |
modules/lang/flags/32/yo.png | 0.63KB | 0.64KB | 0.00% |
modules/lang/flags/32/ka.png | 0.85KB | 0.83KB | ▼ 1.50% |