Benchmarks
Plugin footprint 82% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
The plugin installed successfully, without throwing any errors or notices
Server metrics [RAM: ▲0.52MB] [CPU: ▲704.85ms] 50% from 4 tests
An overview of server-side resources used by Content Locker for Elementor
Please have a look at the following items
- CPU: Try to keep total CPU usage under 500.00ms (currently 672.67ms on /wp-admin/options-general.php?page=content-locker-for-elementor-recommended-plugins)
- Extra CPU: The extra CPU usage should be kept under 200.00ms (currently 704.85ms on /wp-admin/options-general.php?page=content-locker-for-elementor-recommended-plugins)
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.22 ▲0.76 | 698.41 ▲659.96 |
Dashboard /wp-admin | 3.87 ▲0.57 | 753.90 ▲695.78 |
Posts /wp-admin/edit.php | 4.00 ▲0.64 | 830.93 ▲783.85 |
Add New Post /wp-admin/post-new.php | 6.12 ▲0.23 | 778.16 ▲679.82 |
Media Library /wp-admin/upload.php | 3.88 ▲0.65 | 835.15 ▲801.32 |
Recommended /wp-admin/options-general.php?page=content-locker-for-elementor-recommended-plugins | 3.85 | 672.67 |
Server storage [IO: ▲0.44MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
No storage issues were detected
Filesystem: 49 new files
Database: no new tables, 13 new options
New WordPress options |
---|
jltelcl_sheet_promo_data_hash |
jltelcl_notice_subscribe |
jltelcl_notice_what_we_collect |
widget_theysaidso_widget |
theysaidso_admin_options |
db_upgraded |
widget_recent-comments |
content_locker_for_elementor_version |
can_compress_scripts |
widget_recent-posts |
... |
Browser metrics Passed 4 tests
An overview of browser requirements for Content Locker for Elementor
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,084 ▲323 | 13.82 ▼0.55 | 7.92 ▲6.33 | 37.27 ▼3.93 |
Dashboard /wp-admin | 2,383 ▲206 | 5.66 ▲0.07 | 86.31 ▲2.01 | 40.15 ▼4.86 |
Posts /wp-admin/edit.php | 2,217 ▲117 | 2.29 ▲0.29 | 36.23 ▲2.62 | 33.43 ▼0.18 |
Add New Post /wp-admin/post-new.php | 1,629 ▲102 | 21.33 ▼1.89 | 617.29 ▼70.60 | 63.68 ▲5.23 |
Media Library /wp-admin/upload.php | 1,514 ▲117 | 4.22 ▲0.03 | 96.81 ▲0.02 | 40.93 ▼5.42 |
Recommended /wp-admin/options-general.php?page=content-locker-for-elementor-recommended-plugins | 1,288 | 1.77 | 28.91 | 27.38 |
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
These items require your attention
- The uninstall procedure has failed, leaving 13 options in the database
- widget_recent-posts
- theysaidso_admin_options
- jltelcl_activation_time
- widget_recent-comments
- jltelcl_notice_ask_for_rating
- widget_theysaidso_widget
- db_upgraded
- content_locker_for_elementor_version
- can_compress_scripts
- jltelcl_sheet_promo_data
- ...
Smoke tests 25% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
These server-side errors were triggered
- 2 occurences, only the last one shown
- > GET request to /wp-admin/options-general.php?page=content-locker-for-elementor-recommended-plugins
- > Warning in wp-content/plugins/content-locker-for-elementor/class-content-locker-for-elementor.php+127
Use of undefined constant CLE_TD - assumed 'CLE_TD' (this will throw an Error in a future version of PHP)
SRP 50% 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 fix the following
- 8× GET requests to PHP files trigger server-side errors or Error 500 responses:
- > PHP Fatal error
Uncaught Error: Class 'JLTELCL\\Libs\\Recommended' not found in wp-content/plugins/content-locker-for-elementor/Inc/Classes/Recommended_Plugins.php:12
- > PHP Fatal error
Uncaught Error: Class 'JLTELCL\\Libs\\RowLinks' not found in wp-content/plugins/content-locker-for-elementor/Inc/Classes/Row_Links.php:12
- > PHP Fatal error
Uncaught Error: Call to undefined function wp_die() in wp-content/plugins/content-locker-for-elementor/content-locker-for-elementor.php:21
- > PHP Fatal error
Uncaught Error: Class 'JLTELCL\\Inc\\Classes\otifications\\Model\otice' not found in wp-content/plugins/content-locker-for-elementor/Inc/Classes/Notifications/What_We_Collect.php:13
- > PHP Fatal error
Uncaught Error: Class 'JLTELCL\\Inc\\Classes\otifications\\Model\otice' not found in wp-content/plugins/content-locker-for-elementor/Inc/Classes/Notifications/Subscribe.php:13
- > PHP Fatal error
Uncaught Error: Class 'JLTELCL\\Inc\\Classes\otifications\\Model\otice' not found in wp-content/plugins/content-locker-for-elementor/Inc/Classes/Notifications/Ask_For_Rating.php:12
- > PHP Fatal error
Uncaught Error: Class 'JLTELCL\\Libs\\Upgrader' not found in wp-content/plugins/content-locker-for-elementor/Inc/Classes/Upgrade_Plugin.php:12
- > PHP Fatal error
Uncaught Error: Class 'JLTELCL\\Inc\\Classes\otifications\\Model\\Popup' not found in wp-content/plugins/content-locker-for-elementor/Inc/Classes/Notifications/Upgrade_Notice.php:14
- > PHP Fatal error
User-side errors 0% from 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
There are user-side issues you should fix
- > GET request to /wp-admin/options-general.php?page=content-locker-for-elementor-recommended-plugins
- > Network (severe)
https://ps.w.org/ultimate-blocks-for-gutenberg/assets/icon-128x128.png - Failed to load resource: the server responded with a status of 404 ()
Optimizations
Plugin configuration 83% from 29 tests
readme.txt 88% from 16 tests
The readme.txt file uses markdown syntax to describe your plugin to the world
Please fix the following attributes:
- Screenshots: A description for screenshot #5 is required in content-locker-for-elementor/assets to your readme.txt
- Tags: Please reduce the number of tags, currently 11 tag instead of maximum 10
content-locker-for-elementor/content-locker-for-elementor.php 77% from 13 tests
The principal PHP file in "Content Locker for Elementor" v. 1.0.3 is loaded by WordPress automatically on each request
Please take the time to fix the following:
- Domain Path: Please prefix the domain path with a forward slash character ("/languages/")
- Description: Please keep the plugin description shorter than 140 characters (currently 154 characters long)
- Domain Path: Use only dashes and lowercase characters for the domain path ("languages/")
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
No dangerous file extensions were detected6,293 lines of code in 46 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 39 | 1,010 | 1,485 | 4,219 |
CSS | 4 | 319 | 28 | 1,919 |
JavaScript | 2 | 15 | 9 | 154 |
SVG | 1 | 0 | 0 | 1 |
PHP code Passed 2 tests
A short review of cyclomatic complexity and code structure
This plugin has no cyclomatic complexity problems
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.35 |
Average class complexity | 12.10 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 47.00 |
Average method complexity | 2.54 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 18.00 |
Code structure | ||
---|---|---|
Namespaces | 9 | |
Interfaces | 0 | |
Traits | 2 | |
Classes | 28 | |
▷ Abstract classes | 4 | 14.29% |
▷ Concrete classes | 24 | 85.71% |
▷ Final classes | 1 | 4.17% |
Methods | 218 | |
▷ Static methods | 38 | 17.43% |
▷ Public methods | 210 | 96.33% |
▷ Protected methods | 6 | 2.75% |
▷ Private methods | 2 | 0.92% |
Functions | 9 | |
▷ Named functions | 5 | 55.56% |
▷ Anonymous functions | 4 | 44.44% |
Constants | 18 | |
▷ Global constants | 15 | 83.33% |
▷ Class constants | 3 | 16.67% |
▷ Public constants | 3 | 100.00% |
Plugin size 50% from 2 tests
Image compression 50% from 2 tests
All PNG images should be compressed to minimize bandwidth usage for end users
2 PNG files occupy 0.19MB with 0.19MB in potential savings
Potential savings
Compression of 2 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
(invalid) assets/images/dropdown.png | 5.00KB | 0.00KB | ▼ 100.00% |
(invalid) assets/images/promo-image.png | 185.79KB | 0.00KB | ▼ 100.00% |