Benchmarks
Plugin footprint 22% from 16 tests
Installer 0% from 1 test
🔺 Critical test (weight: 50) | All plugins must install correctly, without throwing any errors, warnings, or notices
It is recommended to fix the following installer errors
- Install procedure validation failed for this plugin
- > User deprecated in wp-includes/functions.php+5453
Function get_page_by_title is deprecated since version 6.2.0! Use WP_Query instead.
Server metrics [RAM: ▲5.20MB] [CPU: ▲25.70ms] 75% from 4 tests
Server-side resources used by Podcast Box - Best Podcasting Plugin for WordPress
Please fix the following
- Extra RAM: Extra memory usage must be kept under 5MB (currently 5.20MB on /wp-admin/admin.php?page=freemius)
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 8.80 ▲5.33 | 64.41 ▲23.59 |
Dashboard /wp-admin | 8.82 ▲5.47 | 90.39 ▲26.84 |
Posts /wp-admin/edit.php | 8.82 ▲5.46 | 81.86 ▲31.77 |
Add New Post /wp-admin/post-new.php | 10.44 ▲4.55 | 121.02 ▲20.60 |
Media Library /wp-admin/upload.php | 8.82 ▲5.59 | 78.20 ▲40.70 |
Freemius Debug [v.2.4.3] /wp-admin/admin.php?page=freemius | 8.82 | 68.50 |
Server storage [IO: ▲6.03MB] [DB: ▲0.01MB] Passed 3 tests
How much does this plugin use your filesystem and database?
There were no storage issued detected upon installing this plugin
Filesystem: 522 new files
Database: 2 new tables, 18 new options
New tables |
---|
wp_podcast_episode_relation |
wp_podcast_box_visitors |
New WordPress options |
---|
widget_recent-posts |
fs_accounts |
db_upgraded |
podcast_box_color_settings |
podcast_box_display_settings |
widget_recent-comments |
podcast_box_player_settings |
fs_active_plugins |
widget_theysaidso_widget |
podcast_box_general_settings |
... |
Browser metrics Passed 4 tests
Podcast Box - Best Podcasting Plugin for WordPress: an overview of browser usage
Normal browser usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,539 ▲778 | 16.32 ▲2.05 | 19.08 ▲17.26 | 30.73 ▼15.16 |
Dashboard /wp-admin | 2,411 ▲237 | 6.83 ▲1.25 | 126.41 ▲37.90 | 45.88 ▲3.52 |
Posts /wp-admin/edit.php | 2,346 ▲246 | 3.62 ▲1.61 | 57.36 ▲14.93 | 36.79 ▲0.05 |
Add New Post /wp-admin/post-new.php | 1,587 ▲61 | 22.87 ▼0.22 | 654.65 ▼36.75 | 36.12 ▼19.46 |
Media Library /wp-admin/upload.php | 1,545 ▲145 | 4.88 ▲0.71 | 94.51 ▼8.79 | 44.49 ▼3.68 |
Freemius Debug [v.2.4.3] /wp-admin/admin.php?page=freemius | 1,290 | 3.34 | 45.87 | 26.60 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.01MB] 25% from 4 tests
🔸 Tests weight: 35 | The uninstall procedure must remove all plugin files and extra database tables
The following items require your attention
- This plugin did not uninstall without warnings or errors
- > Notice in wp-content/plugins/podcast-box/freemius/includes/class-freemius.php+8575
Undefined property: stdClass::$plugins
- The uninstall procedure failed, leaving 2 tables in the database
- wp_podcast_box_visitors
- wp_podcast_episode_relation
- Zombie WordPress options were found after uninstall: 18 options
- can_compress_scripts
- widget_recent-comments
- fs_accounts
- podcast_box_general_settings
- fs_debug_mode
- db_upgraded
- podcast_box_player_settings
- podcast_box_color_settings
- podcast_box_image_settings
- fs_gdpr
- ...
Smoke tests 25% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | This is a shallow check for server-side errors
Everything seems fine, however this is by no means 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 non-empty strings when accessed directly via GET requests:
- > /wp-content/plugins/podcast-box/templates/not-found.php
- 21× GET requests to PHP files trigger server-side errors or Error 500 responses (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Call to undefined function podcast_box_get_episode_podcast() in wp-content/plugins/podcast-box/templates/single-episode.php:5
- > PHP Fatal error
Uncaught Error: Call to undefined function podcast_box_get_episode_ids() in wp-content/plugins/podcast-box/includes/admin/views/metabox-latest-episodes.php:5
- > PHP Notice
Trying to get property 'ID' of non-object in wp-content/plugins/podcast-box/includes/admin/views/metabox-episode-actions.php on line 6
- > PHP Fatal error
Uncaught Error: Call to undefined function _e() in wp-content/plugins/podcast-box/includes/admin/views/get-started/index.php:9
- > PHP Notice
Undefined variable: post in wp-content/plugins/podcast-box/includes/admin/views/metabox-episode-actions.php on line 6
- > PHP Fatal error
Uncaught Error: Call to undefined function _e() in wp-content/plugins/podcast-box/includes/admin/views/get-started/new.php:1
- > PHP Fatal error
Uncaught Error: Call to undefined function _e() in wp-content/plugins/podcast-box/includes/admin/views/get-started/widget.php:18
- > PHP Fatal error
Uncaught Error: Call to undefined function do_action() in wp-content/plugins/podcast-box/includes/admin/views/metabox-episode-actions.php:8
- > PHP Notice
Trying to get property 'ID' of non-object in wp-content/plugins/podcast-box/templates/single-episode.php on line 4
- > PHP Notice
Undefined variable: item in wp-content/plugins/podcast-box/templates/not-found.php on line 4
- > PHP Fatal error
User-side errors 0% from 1 test
🔹 Test weight: 20 | A shallow check that no browser errors were triggered
These are user-side errors you should fix
- > GET request to /wp-admin/admin.php?page=freemius
- > Network (severe)
wp-content/plugins/podcast-box/assets/vendor/wp-color-picker-alpha.js?ver=6.3.1 - Failed to load resource: the server responded with a status of 404 (Not Found)
Optimizations
Plugin configuration 93% 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
Attributes that need to be fixed:
- Tags: You are using too many tags: 11 tag instead of maximum 10
podcast-box/plugin.php 92% from 13 tests
The main PHP file in "Podcast Box - Best Podcasting Plugin for WordPress" ver. 1.0.2 adds more information about the plugin and also serves as the entry point for this plugin
The following require your attention:
- Main file name: Even though not officially enforced, the main plugin file should be the same as the plugin slug ("podcast-box.php" instead of "plugin.php")
Code Analysis 97% from 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short glimpse at programming languages used with this plugin and a check that no dangerous files are present
Everything looks great! No dangerous files found in this plugin57,393 lines of code in 460 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 149 | 8,456 | 16,733 | 35,271 |
SVG | 261 | 0 | 1 | 17,689 |
Sass | 14 | 788 | 8 | 2,866 |
JavaScript | 21 | 520 | 186 | 1,549 |
CSS | 15 | 0 | 20 | 18 |
PHP code 50% from 2 tests
This plugin's cyclomatic complexity and code structure detailed below
Please tend to the following items
- Class cyclomatic complexity should be reduced to less than 1000 (currently 2,910)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.59 |
Average class complexity | 72.30 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 2,910.00 |
Average method complexity | 4.44 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 86.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 60 | |
▷ Abstract classes | 2 | 3.33% |
▷ Concrete classes | 58 | 96.67% |
▷ Final classes | 1 | 1.72% |
Methods | 1,269 | |
▷ Static methods | 194 | 15.29% |
▷ Public methods | 922 | 72.66% |
▷ Protected methods | 17 | 1.34% |
▷ Private methods | 330 | 26.00% |
Functions | 125 | |
▷ Named functions | 122 | 97.60% |
▷ Anonymous functions | 3 | 2.40% |
Constants | 131 | |
▷ Global constants | 106 | 80.92% |
▷ Class constants | 25 | 19.08% |
▷ Public constants | 25 | 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
22 PNG files occupy 0.23MB with 0.11MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
freemius/assets/img/theme-icon.png | 10.97KB | 5.78KB | ▼ 47.37% |
assets/images/get-started/add-import-podcasts.png | 21.13KB | 10.41KB | ▼ 50.72% |
assets/images/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png | 0.27KB | 0.18KB | ▼ 35.00% |
assets/images/get-started/podcast-player-widget.png | 37.96KB | 18.44KB | ▼ 51.43% |
assets/images/list.png | 5.08KB | 2.30KB | ▼ 54.69% |