Benchmarks
Plugin footprint 65% 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.60MB] [CPU: ▼16.64ms] Passed 4 tests
An overview of server-side resources used by Super Simple Subscriptions
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.55 ▲0.08 | 40.29 ▼0.11 |
Dashboard /wp-admin | 3.40 ▲0.05 | 52.42 ▼11.09 |
Posts /wp-admin/edit.php | 3.51 ▲0.15 | 54.16 ▲5.11 |
Add New Post /wp-admin/post-new.php | 3.24 ▼2.64 | 38.41 ▼53.24 |
Media Library /wp-admin/upload.php | 3.32 ▲0.09 | 36.45 ▼2.10 |
Server storage [IO: ▲0.65MB] [DB: ▲0.00MB] Passed 3 tests
How much does this plugin use your filesystem and database?
This plugin was installed successfully
Filesystem: 29 new files
Database: 1 new table, 6 new options
New tables |
---|
wp_super_simple_subscriptions |
New WordPress options |
---|
widget_recent-comments |
widget_recent-posts |
theysaidso_admin_options |
can_compress_scripts |
widget_theysaidso_widget |
db_upgraded |
Browser metrics Passed 4 tests
Super Simple Subscriptions: an overview of browser usage
This plugin has a minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,801 ▲55 | 14.34 ▼0.02 | 1.81 ▼0.27 | 42.64 ▲0.43 |
Dashboard /wp-admin | 2,210 ▲33 | 5.61 ▼0.05 | 86.26 ▼14.87 | 37.79 ▼2.15 |
Posts /wp-admin/edit.php | 2,109 ▲6 | 2.00 ▲0.03 | 37.19 ▼2.66 | 32.40 ▼5.52 |
Add New Post /wp-admin/post-new.php | 1,538 ▲12 | 23.01 ▼0.65 | 662.44 ▼41.38 | 50.95 ▼13.60 |
Media Library /wp-admin/upload.php | 1,412 ▲12 | 4.24 ▼0.01 | 98.25 ▼7.96 | 44.78 ▼3.02 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 50% from 4 tests
🔸 Tests weight: 35 | It is important to correctly uninstall your plugin, without leaving any traces
Please fix the following items
- The uninstall procedure failed, leaving 1 table in the database
- wp_super_simple_subscriptions
- This plugin did not uninstall successfully, leaving 6 options in the database
- can_compress_scripts
- widget_recent-comments
- widget_theysaidso_widget
- theysaidso_admin_options
- widget_recent-posts
- db_upgraded
Smoke tests 50% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no server-side errors were triggered
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
- 1× PHP files output text when accessed directly:
- > /wp-content/plugins/super-simple-subscriptions/super_simple_subscriptions.php
- 3× GET requests to PHP files trigger server-side errors or Error 500 responses:
- > PHP Warning
require_once(ABSPATHwp-admin/includes/class-wp-list-table.php): failed to open stream: No such file or directory in wp-content/plugins/super-simple-subscriptions/includes/admin.subscriptions.php on line 4
- > PHP Fatal error
require_once(): Failed opening required 'ABSPATHwp-admin/includes/class-wp-list-table.php' (include_path='.:/usr/share/php') in wp-content/plugins/super-simple-subscriptions/includes/admin.subscriptions.php on line 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/super-simple-subscriptions/includes/admin.subscriptions.php on line 4
- > PHP Warning
User-side errors Passed 1 test
🔹 Test weight: 20 | Just a short smoke test targeting errors on the browser (console and network errors and warnings)
Everything seems fine, but this is not an exhaustive test
Optimizations
Plugin configuration 90% from 29 tests
readme.txt 94% from 16 tests
You should put a lot of thought into formatting readme.txt as it is used by WordPress.org to prepare the public listing of your plugin
Attributes that require attention:
- Plugin Name: Write the name of your plugin instead of "Plugin Name" on the first line (
=== super-simple-subscriptions ===
)
super-simple-subscriptions/super_simple_subscriptions.php 85% from 13 tests
The main file in "Super Simple Subscriptions" v. 1.1.0 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:
- Main file name: Please rename the main PHP file in this plugin to the plugin slug ("super-simple-subscriptions.php" instead of "super_simple_subscriptions.php")
- Text Domain: The text domain name should consist of only dashes and lowercase characters
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short review of files and their extensions; it is not recommended to include executable files
Everything looks great! No dangerous files found in this plugin638 lines of code in 15 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 8 | 176 | 221 | 480 |
PO File | 1 | 35 | 45 | 82 |
Sass | 3 | 8 | 1 | 52 |
JavaScript | 1 | 13 | 11 | 17 |
Ruby | 1 | 6 | 13 | 6 |
CSS | 1 | 0 | 0 | 1 |
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.26 |
Average class complexity | 10.50 |
▷ Minimum class complexity | 3.00 |
▷ Maximum class complexity | 18.00 |
Average method complexity | 1.95 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 8.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 2 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 2 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 20 | |
▷ Static methods | 5 | 25.00% |
▷ Public methods | 20 | 100.00% |
▷ Protected methods | 0 | 0.00% |
▷ Private methods | 0 | 0.00% |
Functions | 9 | |
▷ Named functions | 8 | 88.89% |
▷ Anonymous functions | 1 | 11.11% |
Constants | 1 | |
▷ Global constants | 1 | 100.00% |
▷ Class constants | 0 | 0.00% |
▷ Public constants | 0 | 0.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
8 PNG files occupy 0.59MB with 0.32MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/icon-128x128.png | 7.96KB | 3.68KB | ▼ 53.80% |
assets/icon-256x256.png | 15.21KB | 6.11KB | ▼ 59.86% |
assets/screenshot-2.png | 14.70KB | 6.24KB | ▼ 57.57% |
assets/screenshot-3.png | 34.54KB | 14.27KB | ▼ 58.70% |
assets/banner-1544x500.png | 380.24KB | 214.24KB | ▼ 43.66% |