Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
Install script ran successfully
Server metrics [RAM: ▲0.27MB] [CPU: ▲1.82ms] Passed 4 tests
This is a short check of server-side resources used by inax-ir
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.73 ▲0.27 | 46.50 ▲2.10 |
Dashboard /wp-admin | 3.57 ▲0.27 | 59.09 ▼0.62 |
Posts /wp-admin/edit.php | 3.68 ▲0.33 | 58.74 ▲7.42 |
Add New Post /wp-admin/post-new.php | 6.17 ▲0.28 | 98.72 ▲3.52 |
Media Library /wp-admin/upload.php | 3.49 ▲0.26 | 39.84 ▲2.29 |
درباره آینکس /wp-admin/admin.php?page=inax_about | 3.90 | 38.70 |
تنظیمات آینکس /wp-admin/admin.php?page=inaxir | 3.92 | 41.36 |
درگاه های بانکی /wp-admin/admin.php?page=inax_gateway | 3.91 | 37.87 |
جزئیات سیستم /wp-admin/admin.php?page=inax_system | 3.91 | 39.86 |
تراکنش ها /wp-admin/admin.php?page=inax_trans | 3.93 | 39.83 |
صفحات خرید /wp-admin/admin.php?page=inax_page | 3.92 | 39.62 |
موجودی آینکس /wp-admin/admin.php?page=inax_credit | 3.91 | 40.41 |
Server storage [IO: ▲5.70MB] [DB: ▲0.01MB] Passed 3 tests
A short overview of filesystem and database impact
The plugin installed successfully
Filesystem: 357 new files
Database: 1 new table, 10 new options
New tables |
---|
wp_inax_charge |
New WordPress options |
---|
theysaidso_admin_options |
db_upgraded |
inax_options |
inax_db_version |
inax_version |
widget_theysaidso_widget |
inax_do_activation |
can_compress_scripts |
widget_recent-comments |
widget_recent-posts |
Browser metrics Passed 4 tests
An overview of browser requirements for inax-ir
Normal browser usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,837 ▲76 | 14.24 ▲0.08 | 1.74 ▼0.13 | 43.57 ▲0.11 |
Dashboard /wp-admin | 2,231 ▲54 | 5.56 ▲0.03 | 85.80 ▼12.93 | 69.73 ▲25.50 |
Posts /wp-admin/edit.php | 2,151 ▲51 | 1.98 ▲0.03 | 33.66 ▼1.82 | 40.05 ▲1.58 |
Add New Post /wp-admin/post-new.php | 1,583 ▲45 | 22.87 ▲4.59 | 716.46 ▲58.48 | 54.83 ▼6.51 |
Media Library /wp-admin/upload.php | 1,451 ▲54 | 4.28 ▼0.02 | 102.18 ▼10.46 | 72.18 ▲21.99 |
درباره آینکس /wp-admin/admin.php?page=inax_about | 1,043 | 2.01 | 24.78 | 70.19 |
تنظیمات آینکس /wp-admin/admin.php?page=inaxir | 1,267 | 1.86 | 39.98 | 44.45 |
درگاه های بانکی /wp-admin/admin.php?page=inax_gateway | 887 | 1.93 | 27.94 | 24.79 |
جزئیات سیستم /wp-admin/admin.php?page=inax_system | 924 | 2.16 | 23.55 | 29.96 |
تراکنش ها /wp-admin/admin.php?page=inax_trans | 1,031 | 1.87 | 27.29 | 34.07 |
صفحات خرید /wp-admin/admin.php?page=inax_page | 1,186 | 2.05 | 25.96 | 35.24 |
موجودی آینکس /wp-admin/admin.php?page=inax_credit | 959 | 2.05 | 25.99 | 28.56 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
It is recommended to fix the following
- The uninstall procedure has failed, leaving 6 options in the database
- widget_recent-comments
- theysaidso_admin_options
- can_compress_scripts
- widget_theysaidso_widget
- db_upgraded
- widget_recent-posts
Smoke tests 25% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | Just a short smoke test targeting errors on the server (in the Apache logs)
These errors were triggered by the plugin
- 7 occurences, only the last one shown
- > GET request to /wp-admin/admin.php?page=inax_credit
- > Notice in wp-content/plugins/inax-ir/inc/load.php+52
date_default_timezone_set(): Timezone ID '' is invalid
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 take a closer look at the following
- 23× GET requests to PHP files return non-empty strings (only 10 are shown):
- > /wp-content/plugins/inax-ir/inc/inax-functions.php
- > /wp-content/plugins/inax-ir/inc/validation.php
- > /wp-content/plugins/inax-ir/internet.php
- > /wp-content/plugins/inax-ir/inax-system.php
- > /wp-content/plugins/inax-ir/gateways.php
- > /wp-content/plugins/inax-ir/inc/inax-admin.php
- > /wp-content/plugins/inax-ir/inax-credit.php
- > /wp-content/plugins/inax-ir/inax-pages.php
- > /wp-content/plugins/inax-ir/inc/ajax_check_bill.php
- > /wp-content/plugins/inax-ir/inc/load.php
- 90× PHP files trigger server errors when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'Smarty_Resource_Recompiled' not found in wp-content/plugins/inax-ir/inc/smarty-4.3.0/libs/sysplugins/smarty_internal_resource_stream.php:20
- > PHP Fatal error
Uncaught Error: Class 'Smarty_CacheResource' not found in wp-content/plugins/inax-ir/inc/smarty-4.3.0/libs/sysplugins/smarty_cacheresource_keyvaluestore.php:31
- > PHP Fatal error
Uncaught Error: Class 'Smarty_Internal_Compile_Shared_Inheritance' not found in wp-content/plugins/inax-ir/inc/smarty-4.3.0/libs/sysplugins/smarty_internal_compile_extends.php:17
- > PHP Fatal error
Uncaught Error: Call to a member function _decodeProperties() on null in wp-content/plugins/inax-ir/inc/templates_c/7449ed3703dfdcbc4496a63cb8ec5869db09c0f3_0.file.gateways.tpl.php:6
- > PHP Fatal error
Uncaught Error: Class 'Smarty_Resource' not found in wp-content/plugins/inax-ir/inc/smarty-4.3.0/libs/sysplugins/smarty_internal_resource_extends.php:18
- > PHP Fatal error
Uncaught Error: Class 'Smarty_Internal_ParseTree' not found in wp-content/plugins/inax-ir/inc/smarty-4.3.0/libs/sysplugins/smarty_internal_parsetree_code.php:19
- > PHP Fatal error
Uncaught Error: Class 'Smarty_Internal_Method_CompileAllTemplates' not found in wp-content/plugins/inax-ir/inc/smarty-4.3.0/libs/sysplugins/smarty_internal_method_compileallconfig.php:12
- > PHP Fatal error
Uncaught Error: Call to a member function _decodeProperties() on null in wp-content/plugins/inax-ir/inc/templates_c/10ff1164ccf1a1a93848d311a427504350d48d69_0.file.header.tpl.php:6
- > PHP Fatal error
Uncaught Error: Class 'Smarty_Internal_CompileBase' not found in wp-content/plugins/inax-ir/inc/smarty-4.3.0/libs/sysplugins/smarty_internal_compile_eval.php:17
- > PHP Fatal error
Uncaught Error: Class 'Smarty_Variable' not found in wp-content/plugins/inax-ir/inc/smarty-4.3.0/libs/sysplugins/smarty_undefined_variable.php:10
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no browser errors were triggered
Everything seems fine, but this is not an exhaustive test
Optimizations
Plugin configuration 87% from 29 tests
readme.txt 88% from 16 tests
Often overlooked, readme.txt is one of the most important files in your plugin
Attributes that require attention:
- Screenshots: Screenshot #1 (پیش نمایش صفحه مدیریت آینکس) image missing
- Tags: Please reduce the number of tags, currently 13 tag instead of maximum 10
inax-ir/inax-ir.php 85% from 13 tests
The main file in "inax-ir" v. 3.4 serves as a complement to information provided in readme.txt and as the entry point to the plugin
Please take the time to fix the following:
- Description: Please don't use more than 140 characters for the plugin description (currently 204 characters long)
- Text Domain: You no longer need to specify the text domain since WordPress 4.6; it must be the same as the plugin slug
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short glimpse at programming languages used with this plugin and a check that no dangerous files are present
Everything looks great! No dangerous files found in this plugin40,909 lines of code in 292 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 243 | 2,346 | 12,378 | 23,871 |
CSS | 23 | 5,796 | 209 | 13,258 |
Smarty | 19 | 284 | 25 | 2,400 |
PO File | 4 | 567 | 652 | 1,200 |
JavaScript | 3 | 37 | 39 | 180 |
PHP code Passed 2 tests
Analyzing logical lines of code, cyclomatic complexity, and other code metrics
Great job! No cyclomatic complexity issues were detected in this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.54 |
Average class complexity | 15.36 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 196.00 |
Average method complexity | 3.87 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 91.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 171 | |
▷ Abstract classes | 13 | 7.60% |
▷ Concrete classes | 158 | 92.40% |
▷ Final classes | 0 | 0.00% |
Methods | 875 | |
▷ Static methods | 26 | 2.97% |
▷ Public methods | 828 | 94.63% |
▷ Protected methods | 24 | 2.74% |
▷ Private methods | 23 | 2.63% |
Functions | 141 | |
▷ Named functions | 139 | 98.58% |
▷ Anonymous functions | 2 | 1.42% |
Constants | 161 | |
▷ Global constants | 12 | 7.45% |
▷ Class constants | 149 | 92.55% |
▷ Public constants | 149 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
Often times overlooked, PNG files can occupy unnecessary space in your plugin
36 PNG files occupy 0.37MB with 0.08MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/images/mci.png | 6.16KB | 6.06KB | ▼ 1.62% |
assets/images/pin_en.png | 17.98KB | 12.35KB | ▼ 31.33% |
assets/images/sht_en.png | 6.13KB | 4.09KB | ▼ 33.30% |
assets/images/bill_en.png | 7.14KB | 4.63KB | ▼ 35.24% |
assets/images/internet.png | 20.56KB | 20.27KB | ▼ 1.42% |