Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | It is important to correctly install your plugin, without throwing errors or notices
The plugin installed gracefully, with no errors
Server metrics [RAM: ▲2.18MB] [CPU: ▲16.28ms] Passed 4 tests
This is a short check of server-side resources used by Advanced Access Manager - Restricted Content, Users & Roles, Enhanced Security and More
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 5.51 ▲2.05 | 58.06 ▲16.84 |
Dashboard /wp-admin | 5.56 ▲2.25 | 63.05 ▲10.97 |
Posts /wp-admin/edit.php | 5.61 ▲2.24 | 65.64 ▲22.04 |
Add New Post /wp-admin/post-new.php | 8.40 ▲2.51 | 115.11 ▲15.97 |
Media Library /wp-admin/upload.php | 5.40 ▲2.16 | 54.91 ▲21.33 |
Server storage [IO: ▲2.93MB] [DB: ▲0.00MB] Passed 3 tests
Input-output and database impact of this plugin
This plugin installed successfully
Filesystem: 258 new files
Database: no new tables, 8 new options
New WordPress options |
---|
widget_recent-comments |
db_upgraded |
can_compress_scripts |
widget_aam_backend_login |
widget_recent-posts |
widget_theysaidso_widget |
aam_migrations |
theysaidso_admin_options |
Browser metrics Passed 4 tests
Advanced Access Manager - Restricted Content, Users & Roles, Enhanced Security and More: an overview of browser usage
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,871 ▲124 | 14.73 ▲0.36 | 1.93 ▲0.01 | 37.83 ▼7.22 |
Dashboard /wp-admin | 2,276 ▲96 | 5.51 ▼0.14 | 87.96 ▼3.97 | 38.56 ▼3.95 |
Posts /wp-admin/edit.php | 2,178 ▲96 | 1.98 ▼0.04 | 39.52 ▲2.79 | 34.73 ▲1.39 |
Add New Post /wp-admin/post-new.php | 1,542 ▲6 | 22.94 ▼0.25 | 625.85 ▼57.11 | 52.57 ▲1.05 |
Media Library /wp-admin/upload.php | 1,478 ▲81 | 4.19 ▼0.06 | 99.01 ▼1.12 | 43.04 ▼2.52 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
These items require your attention
- The uninstall procedure has failed, leaving 8 options in the database
- widget_recent-comments
- widget_aam_backend_login
- widget_theysaidso_widget
- db_upgraded
- widget_recent-posts
- theysaidso_admin_options
- aam_migrations
- can_compress_scripts
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 | A shallow check of the single-responsibility principle; PHP files should perform no action - including output of placeholder text - and trigger no errors when accessed directly
Please take a closer look at the following
- 49× PHP files output text when accessed directly (only 10 are shown):
- > /wp-content/plugins/advanced-access-manager/application/Backend/tmpl/partial/jwt-login-url.php
- > /wp-content/plugins/advanced-access-manager/application/Backend/tmpl/settings/content.php
- > /wp-content/plugins/advanced-access-manager/application/Backend/tmpl/partial/taxonomy-access-form.php
- > /wp-content/plugins/advanced-access-manager/application/Backend/tmpl/service/route.php
- > /wp-content/plugins/advanced-access-manager/application/Backend/tmpl/settings/service.php
- > /wp-content/plugins/advanced-access-manager/application/Backend/tmpl/partial/role-inheritance.php
- > /wp-content/plugins/advanced-access-manager/application/Backend/tmpl/service/menu.php
- > /wp-content/plugins/advanced-access-manager/application/Backend/tmpl/service/welcome.php
- > /wp-content/plugins/advanced-access-manager/application/Backend/tmpl/metabox/iframe-header.php
- > /wp-content/plugins/advanced-access-manager/application/Backend/tmpl/widget/login-backend.php
- 111× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'AAM_Backend_Feature_Abstract' not found in wp-content/plugins/advanced-access-manager/application/Backend/Feature/Main/Toolbar.php:19
- > PHP Fatal error
Trait 'AAM_Core_Contract_SingletonTrait' not found in wp-content/plugins/advanced-access-manager/application/Service/Core.php on line 29
- > PHP Fatal error
Uncaught Error: Class 'AAM_Backend_Feature_Abstract' not found in wp-content/plugins/advanced-access-manager/application/Backend/Feature/Main/Jwt.php:21
- > PHP Fatal error
Uncaught Error: Class 'AAM_Core_Subject' not found in wp-content/plugins/advanced-access-manager/application/Core/Subject/Role.php:19
- > PHP Fatal error
Trait 'AAM_Core_Contract_RequestTrait' not found in wp-content/plugins/advanced-access-manager/application/Backend/Feature/Abstract.php on line 19
- > PHP Fatal error
Trait 'AAM_Core_Contract_SingletonTrait' not found in wp-content/plugins/advanced-access-manager/application/Core/Restful.php on line 16
- > PHP Fatal error
Trait 'AAM_Core_Contract_ServiceTrait' not found in wp-content/plugins/advanced-access-manager/application/Service/LogoutRedirect.php on line 23
- > PHP Fatal error
Trait 'AAM_Core_Contract_ServiceTrait' not found in wp-content/plugins/advanced-access-manager/application/Service/NotFoundRedirect.php on line 22
- > PHP Fatal error
Uncaught Error: Class 'AAM_Core_Object' not found in wp-content/plugins/advanced-access-manager/application/Core/Object/Visibility.php:20
- > PHP Fatal error
Uncaught Error: Class 'AAM_Framework_Service_RedirectAbstract' not found in wp-content/plugins/advanced-access-manager/application/Framework/Service/LoginRedirect.php:16
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
Everything seems fine, but this is not an exhaustive test
Optimizations
Plugin configuration 96% from 29 tests
readme.txt Passed 16 tests
Perhaps the most important file in your plugin readme.txt gets parsed in order to generate the public listing of your plugin
7 plugin tags: membership, access control, user role, backend menu, jwt...
advanced-access-manager/aam.php 92% from 13 tests
The entry point to "Advanced Access Manager - Restricted Content, Users & Roles, Enhanced Security and More" version 6.9.18 is a PHP file that has certain tags in its header comment area
It is important to fix the following:
- Main file name: The principal plugin file should be the same as the plugin slug ("advanced-access-manager.php" instead of "aam.php")
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 detected28,157 lines of code in 235 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 226 | 4,542 | 17,463 | 19,769 |
JavaScript | 4 | 681 | 786 | 4,643 |
CSS | 2 | 296 | 82 | 2,109 |
PO File | 1 | 605 | 953 | 1,534 |
SVG | 2 | 65 | 1 | 102 |
PHP code Passed 2 tests
An short overview of logical lines of code, cyclomatic complexity, and other code metrics
There are no cyclomatic complexity problems detected for this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.42 |
Average class complexity | 14.21 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 159.00 |
Average method complexity | 3.05 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 36.00 |
Code structure | ||
---|---|---|
Namespaces | 8 | |
Interfaces | 13 | |
Traits | 5 | |
Classes | 148 | |
▷ Abstract classes | 5 | 3.38% |
▷ Concrete classes | 143 | 96.62% |
▷ Final classes | 6 | 4.20% |
Methods | 1,111 | |
▷ Static methods | 179 | 16.11% |
▷ Public methods | 736 | 66.25% |
▷ Protected methods | 255 | 22.95% |
▷ Private methods | 120 | 10.80% |
Functions | 185 | |
▷ Named functions | 0 | 0.00% |
▷ Anonymous functions | 185 | 100.00% |
Constants | 168 | |
▷ Global constants | 4 | 2.38% |
▷ Class constants | 164 | 97.62% |
▷ Public constants | 164 | 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
13 compressed PNG files occupy 0.68MB
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
media/material/json-policy.png | 55.73KB | 55.79KB | 0.00% |
media/material/private-wordpress-website.png | 46.25KB | 46.30KB | 0.00% |
media/material/passwordless-login-temp-accounts.png | 58.80KB | 58.88KB | 0.00% |
media/material/manage-roles-users-capabilities.png | 59.00KB | 59.11KB | 0.00% |
media/material/3-simple-steps-for-website-security.png | 61.47KB | 61.54KB | 0.00% |