Benchmarks
Plugin footprint 82% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | All plugins must install correctly, without throwing any errors, warnings, or notices
Installer ran successfully
Server metrics [RAM: ▲2.33MB] [CPU: ▲11.73ms] Passed 4 tests
A check of server-side resources used by CardanoPress - Cardano Blockchain Integration for WordPress
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 5.82 ▲2.35 | 54.11 ▲13.14 |
Dashboard /wp-admin | 5.63 ▲2.32 | 58.86 ▲8.53 |
Posts /wp-admin/edit.php | 5.68 ▲2.32 | 71.89 ▲22.70 |
Add New Post /wp-admin/post-new.php | 8.22 ▲2.33 | 97.71 ▲2.53 |
Media Library /wp-admin/upload.php | 5.56 ▲2.32 | 59.79 ▲23.31 |
CardanoPress /wp-admin/admin.php?page=cardanopress | 5.48 | 54.33 |
Install Plugins /wp-admin/admin.php?page=cardanopress-plugins | 5.54 | 44.10 |
Server storage [IO: ▲6.58MB] [DB: ▲0.00MB] 67% from 3 tests
Analyzing filesystem and database footprints of this plugin
These are issues you should consider
- There were 1 file (0.11KB) illegally modified outside of "wp-content/plugins/cardanopress/" and "wp-content/uploads/"
- (new file) wp-content/cardanopress-logs/2023/10/31/installer.log
Filesystem: 486 new files
Database: no new tables, 8 new options
New WordPress options |
---|
widget_theysaidso_widget |
cardanopress |
theysaidso_admin_options |
cardanopress_version |
can_compress_scripts |
widget_recent-posts |
db_upgraded |
widget_recent-comments |
Browser metrics Passed 4 tests
CardanoPress - Cardano Blockchain Integration for WordPress: an overview of browser usage
Normal browser usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,328 ▲567 | 15.66 ▲1.31 | 17.82 ▲16.06 | 37.70 ▼8.72 |
Dashboard /wp-admin | 2,291 ▲117 | 5.57 ▲0.01 | 97.29 ▲8.82 | 47.15 ▲2.69 |
Posts /wp-admin/edit.php | 2,205 ▲102 | 2.15 ▲0.16 | 41.31 ▲0.11 | 39.98 ▲3.07 |
Add New Post /wp-admin/post-new.php | 1,609 ▲73 | 23.66 ▲0.39 | 693.94 ▲18.28 | 53.09 ▲1.95 |
Media Library /wp-admin/upload.php | 1,504 ▲104 | 4.25 ▲0.03 | 98.80 ▼9.91 | 47.09 ▼0.40 |
CardanoPress /wp-admin/admin.php?page=cardanopress | 2,082 | 4.43 | 121.64 | 43.72 |
Install Plugins /wp-admin/admin.php?page=cardanopress-plugins | 1,063 | 2.21 | 27.72 | 29.61 |
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
- Zombie WordPress options were found after uninstall: 8 options
- db_upgraded
- theysaidso_admin_options
- widget_theysaidso_widget
- widget_recent-comments
- cardanopress_version
- cardanopress
- widget_recent-posts
- 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
Even though everything seems fine, this is not an exhaustive test
SRP 0% from 2 tests
🔹 Tests weight: 20 | SRP (Single-Responsibility Principle) - PHP files must act as libraries and never output text or perform any action when accessed directly in a browser
Please fix the following
- 9× PHP files perform the task of outputting text when accessed with GET requests:
- > /wp-content/plugins/cardanopress/templates/part/payment-address.php
- > /wp-content/plugins/cardanopress/templates/part/payment-lovelace.php
- > /wp-content/plugins/cardanopress/templates/part/payment-recaptcha.php
- > /wp-content/plugins/cardanopress/templates/part/payment-output.php
- > /wp-content/plugins/cardanopress/templates/part/payment-quantity.php
- > /wp-content/plugins/cardanopress/templates/part/modal-header.php
- > /wp-content/plugins/cardanopress/templates/part/payment-toggle.php
- > /wp-content/plugins/cardanopress/templates/part/notice-item.php
- > /wp-content/plugins/cardanopress/templates/part/modal-content.php
- 235× PHP files trigger server-side errors or warnings when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'CardanoPress\\Dependencies\\Monolog\\Handler\\AbstractProcessingHandler' not found in wp-content/plugins/cardanopress/dependencies/vendor/cardanopress/framework/dependencies/Monolog/Handler/AmqpHandler.php:24
- > PHP Fatal error
Uncaught Error: Class 'CardanoPress\\Dependencies\\Monolog\\Handler\\AbstractProcessingHandler' not found in wp-content/plugins/cardanopress/dependencies/vendor/cardanopress/framework/dependencies/Monolog/Handler/ChromePHPHandler.php:28
- > PHP Fatal error
Uncaught Error: Class 'CardanoPress\\Dependencies\\Monolog\\Handler\\AbstractProcessingHandler' not found in wp-content/plugins/cardanopress/dependencies/vendor/cardanopress/framework/dependencies/Monolog/Handler/SqsHandler.php:23
- > PHP Fatal error
Uncaught Error: Class 'CardanoPress\\Dependencies\\Monolog\\Formatter\ormalizerFormatter' not found in wp-content/plugins/cardanopress/dependencies/vendor/cardanopress/framework/dependencies/Monolog/Formatter/JsonFormatter.php:25
- > PHP Fatal error
Uncaught Error: Class 'CardanoPress\\Dependencies\\ThemePlate\\Core\\Form' not found in wp-content/plugins/cardanopress/dependencies/vendor/cardanopress/framework/dependencies/ThemePlate/Settings/OptionBox.php:19
- > PHP Fatal error
Uncaught Error: Interface 'CardanoPress\\Dependencies\\GuzzleHttp\\BodySummarizerInterface' not found in wp-content/plugins/cardanopress/dependencies/vendor/cardanopress/framework/dependencies/GuzzleHttp/BodySummarizer.php:7
- > PHP Fatal error
Uncaught Error: Interface 'CardanoPress\\Dependencies\\Monolog\\Formatter\\FormatterInterface' not found in wp-content/plugins/cardanopress/dependencies/vendor/cardanopress/framework/dependencies/Monolog/Formatter/ChromePHPFormatter.php:21
- > PHP Fatal error
Uncaught Error: Class 'CardanoPress\\Dependencies\\ThemePlate\\Core\\Form' not found in wp-content/plugins/cardanopress/dependencies/vendor/cardanopress/framework/dependencies/ThemePlate/Meta/BaseMeta.php:18
- > PHP Fatal error
Uncaught Error: Call to undefined function cardanoPress() in wp-content/plugins/cardanopress/templates/page/Delegation.php:12
- > PHP Fatal error
Uncaught Error: Interface 'CardanoPress\\Dependencies\\Monolog\\Processor\\ProcessorInterface' not found in wp-content/plugins/cardanopress/dependencies/vendor/cardanopress/framework/dependencies/Monolog/Processor/IntrospectionProcessor.php:31
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a shallow check for browser errors
There were no browser issues found
Optimizations
Plugin configuration 97% from 29 tests
readme.txt 94% from 16 tests
It's important to format your readme.txt file correctly as it is parsed for the public listing of your plugin
Please fix the following attributes:
- Screenshots: Please add images for these screenshots: #1 (CardanoPress configuration screen), #2 (NFT Configuration), #3 (Example wallet connector)
cardanopress/cardanopress.php Passed 13 tests
"CardanoPress - Cardano Blockchain Integration for WordPress" version 1.7.0's primary PHP file adds more information about the plugin and serves as the entry point for WordPress
49 characters long description:
Core plugin for the suite of CardanoPress plugins
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | This is a short overview of programming languages used in this plugin, detecting executable files
Good job! No executable or dangerous file extensions detected36,030 lines of code in 475 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 433 | 7,975 | 15,747 | 29,986 |
YAML | 1 | 409 | 0 | 2,905 |
JavaScript | 28 | 396 | 13 | 1,644 |
CSS | 5 | 121 | 9 | 954 |
Markdown | 4 | 164 | 0 | 379 |
JSON | 3 | 0 | 0 | 156 |
XML | 1 | 2 | 1 | 6 |
PHP code Passed 2 tests
This plugin's cyclomatic complexity and code structure detailed below
Although this was not an exhaustive test, there were no cyclomatic complexity issues detected
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.41 |
Average class complexity | 10.49 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 206.00 |
Average method complexity | 2.70 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 34.00 |
Code structure | ||
---|---|---|
Namespaces | 47 | |
Interfaces | 50 | |
Traits | 18 | |
Classes | 312 | |
▷ Abstract classes | 25 | 8.01% |
▷ Concrete classes | 287 | 91.99% |
▷ Final classes | 38 | 13.24% |
Methods | 2,225 | |
▷ Static methods | 251 | 11.28% |
▷ Public methods | 1,690 | 75.96% |
▷ Protected methods | 292 | 13.12% |
▷ Private methods | 243 | 10.92% |
Functions | 159 | |
▷ Named functions | 34 | 21.38% |
▷ Anonymous functions | 125 | 78.62% |
Constants | 164 | |
▷ Global constants | 1 | 0.61% |
▷ Class constants | 163 | 99.39% |
▷ Public constants | 125 | 76.69% |
Plugin size 50% from 2 tests
Image compression 50% from 2 tests
Often times overlooked, PNG files can occupy unnecessary space in your plugin
3 PNG files occupy 2.88MB with 2.40MB in potential savings
Potential savings
Compression of 3 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
Screenshot-1.png | 1,154.41KB | 222.41KB | ▼ 80.73% |
Screenshot-3.png | 648.89KB | 67.72KB | ▼ 89.56% |
Screenshot-2.png | 1,144.81KB | 236.08KB | ▼ 79.38% |