Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
This plugin's installer ran successfully
Server metrics [RAM: ▲0.01MB] [CPU: ▼6.26ms] Passed 4 tests
Server-side resources used by Show articles by keyword
This plugin has minimal impact on server resources
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.47 ▲0.01 | 33.93 ▼7.12 |
Dashboard /wp-admin | 3.32 ▲0.01 | 44.80 ▼5.77 |
Posts /wp-admin/edit.php | 3.37 ▲0.01 | 45.28 ▲1.35 |
Add New Post /wp-admin/post-new.php | 5.90 ▲0.01 | 88.24 ▼13.49 |
Media Library /wp-admin/upload.php | 3.24 ▲0.01 | 34.03 ▲3.17 |
Server storage [IO: ▲0.15MB] [DB: ▲0.00MB] Passed 3 tests
Filesystem and database footprint
No storage issues were detected
Filesystem: 3 new files
Database: no new tables, 6 new options
New WordPress options |
---|
theysaidso_admin_options |
can_compress_scripts |
widget_recent-posts |
widget_recent-comments |
db_upgraded |
widget_theysaidso_widget |
Browser metrics Passed 4 tests
Checking browser requirements for Show articles by keyword
This plugin has a minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,800 ▲65 | 13.34 ▼1.02 | 4.60 ▲2.71 | 41.84 ▼5.32 |
Dashboard /wp-admin | 2,206 ▲20 | 4.85 ▼0.06 | 108.95 ▲3.10 | 44.62 ▲2.63 |
Posts /wp-admin/edit.php | 2,089 ▲3 | 2.02 ▲0.00 | 39.65 ▲2.11 | 35.09 ▼1.27 |
Add New Post /wp-admin/post-new.php | 1,544 ▲8 | 18.32 ▼4.96 | 601.42 ▼4.70 | 52.70 ▲4.02 |
Media Library /wp-admin/upload.php | 1,388 ▼3 | 4.17 ▼0.05 | 100.05 ▲3.33 | 42.17 ▼1.40 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
Please fix the following items
- The uninstall procedure has failed, leaving 6 options in the database
- widget_recent-comments
- db_upgraded
- widget_recent-posts
- widget_theysaidso_widget
- theysaidso_admin_options
- can_compress_scripts
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | Just a short smoke test targeting errors on the server (in the Apache logs)
The smoke test was a success, however most plugin functionality was not tested
SRP 50% from 2 tests
🔹 Tests weight: 20 | It is important to ensure that your PHP files perform no action when accessed directly, respecting the single-responsibility principle
Please fix the following
- 1× PHP files trigger errors when accessed directly with GET requests:
- > PHP Fatal error
Uncaught Error: Call to undefined function add_shortcode() in wp-content/plugins/show-articles-by-keyword/show_articles_by_keyword.php:52
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
There were no browser issues found
Optimizations
Plugin configuration 90% from 29 tests
readme.txt 94% from 16 tests
Don't ignore readme.txt as it is the file that instructs WordPress.org on how to present your plugin to the world
Attributes that need to be fixed:
- Screenshots: Screenshot #1 (Simple shortcode turns to output (styleable via CSS)) image missing
show-articles-by-keyword/show_articles_by_keyword.php 85% from 13 tests
The principal PHP file in "Show articles by keyword" v. 1.0 is loaded by WordPress automatically on each request
It is important to fix the following:
- Description: Keep the plugin description shorter than 140 characters (currently 150 characters long)
- Main file name: The principal plugin file should be the same as the plugin slug ("show-articles-by-keyword.php" instead of "show_articles_by_keyword.php")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | Executable files are not allowed as they can serve as attack vectors
Everything looks great! No dangerous files found in this plugin29 lines of code in 1 file:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 1 | 13 | 12 | 29 |
PHP code Passed 2 tests
An short overview of logical lines of code, cyclomatic complexity, and other code metrics
No complexity issues detected
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.33 |
Average class complexity | 0.00 |
▷ Minimum class complexity | 0.00 |
▷ Maximum class complexity | 0.00 |
Average method complexity | 0.00 |
▷ Minimum method complexity | 0.00 |
▷ Maximum method complexity | 0.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 0 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 0 | 0.00% |
▷ Final classes | 0 | 0.00% |
Methods | 0 | |
▷ Static methods | 0 | 0.00% |
▷ Public methods | 0 | 0.00% |
▷ Protected methods | 0 | 0.00% |
▷ Private methods | 0 | 0.00% |
Functions | 1 | |
▷ Named functions | 1 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 0 | |
▷ Global constants | 0 | 0.00% |
▷ Class constants | 0 | 0.00% |
▷ Public constants | 0 | 0.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
It is recommended to compress PNG files in your plugin to minimize bandwidth usage
1 PNG file occupies 0.14MB with 0.05MB in potential savings
Potential savings
Compression of 1 random PNG file using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
screenshot-1.png | 146.31KB | 98.53KB | ▼ 32.66% |