Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
The plugin installed successfully, without throwing any errors or notices
Server metrics [RAM: ▲1.90MB] [CPU: ▲3.24ms] Passed 4 tests
Server-side resources used by FundPress - WordPress Donation Plugin
No issues were detected with server-side resource usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 5.23 ▲1.77 | 48.51 ▲3.73 |
Dashboard /wp-admin | 5.27 ▲1.96 | 57.88 ▲3.17 |
Posts /wp-admin/edit.php | 5.29 ▲1.93 | 75.64 ▲28.97 |
Add New Post /wp-admin/post-new.php | 7.93 ▲2.05 | 89.43 ▼11.47 |
Media Library /wp-admin/upload.php | 5.14 ▲1.92 | 52.69 ▲17.53 |
Settings /wp-admin/admin.php?page=tp_donate_setting | 5.30 | 50.95 |
Categories /wp-admin/edit-tags.php?taxonomy=dn_campaign_cat&post_type=dn_campaign | 5.10 | 47.52 |
Donors /wp-admin/edit.php?post_type=dn_donor | 5.21 | 49.39 |
Add Campaign /wp-admin/post-new.php?post_type=dn_campaign | 5.41 | 63.20 |
Tags /wp-admin/edit-tags.php?taxonomy=dn_campaign_tag&post_type=dn_campaign | 5.10 | 54.46 |
Donates /wp-admin/edit.php?post_type=dn_donate | 5.22 | 50.56 |
Campaigns /wp-admin/edit.php?post_type=dn_campaign | 5.22 | 48.82 |
Server storage [IO: ▲4.07MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
The plugin installed successfully
Filesystem: 549 new files
Database: no new tables, 13 new options
New WordPress options |
---|
widget_recent-comments |
thimpress_donate_version |
widget_theysaidso_widget |
donate_donate-cart_page_id |
can_compress_scripts |
db_upgraded |
widget_donate_system_widget |
donate_checkout_page_id |
widget_recent-posts |
thimpress_donate |
... |
Browser metrics Passed 4 tests
Checking browser requirements for FundPress - WordPress Donation Plugin
Minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,132 ▲397 | 16.87 ▲2.50 | 164.34 ▲161.99 | 53.81 ▲8.14 |
Dashboard /wp-admin | 2,310 ▲119 | 5.44 ▲0.59 | 115.59 ▲8.09 | 38.44 ▼5.55 |
Posts /wp-admin/edit.php | 2,197 ▲108 | 2.61 ▲0.58 | 41.12 ▲4.72 | 32.79 ▼3.78 |
Add New Post /wp-admin/post-new.php | 1,598 ▲70 | 23.23 ▲5.01 | 693.65 ▲32.81 | 36.31 ▼16.59 |
Media Library /wp-admin/upload.php | 1,492 ▲101 | 4.68 ▲0.44 | 100.26 ▼5.49 | 45.09 ▼0.63 |
Settings /wp-admin/admin.php?page=tp_donate_setting | 3,470 | 7.41 | 189.29 | 59.55 |
Categories /wp-admin/edit-tags.php?taxonomy=dn_campaign_cat&post_type=dn_campaign | 1,381 | 2.37 | 34.90 | 27.56 |
Donors /wp-admin/edit.php?post_type=dn_donor | 1,223 | 2.53 | 35.70 | 29.12 |
Add Campaign /wp-admin/post-new.php?post_type=dn_campaign | 3,050 | 7.71 | 177.17 | 67.94 |
Tags /wp-admin/edit-tags.php?taxonomy=dn_campaign_tag&post_type=dn_campaign | 1,350 | 2.48 | 34.72 | 29.25 |
Donates /wp-admin/edit.php?post_type=dn_donate | 1,228 | 2.51 | 36.90 | 29.87 |
Campaigns /wp-admin/edit.php?post_type=dn_campaign | 1,250 | 2.49 | 37.25 | 28.69 |
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
You still need to fix the following
- The uninstall procedure has failed, leaving 13 options in the database
- theysaidso_admin_options
- donate_donate-cart_page_id
- thimpress_donate_version
- db_upgraded
- widget_donate_system_widget
- widget_theysaidso_widget
- donate_checkout_page_id
- widget_donate_widget
- widget_recent-comments
- widget_recent-posts
- ...
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | This is a short smoke test looking for server-side errors
Good news, no errors were detected
SRP 50% from 2 tests
🔹 Tests weight: 20 | The single-responsibility principle applies for WordPress plugins as well - please make sure your PHP files perform no actions when accessed directly
Please fix the following
- 39× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'CMB2_Type_Text' not found in wp-content/plugins/fundpress/inc/vendors/cmb2/includes/types/CMB2_Type_File_Base.php:13
- > PHP Fatal error
Uncaught Error: Class 'CMB2_Type_Text' not found in wp-content/plugins/fundpress/inc/vendors/cmb2/includes/types/CMB2_Type_Oembed.php:13
- > PHP Fatal error
Uncaught Error: Class 'CMB2_Type_Textarea' not found in wp-content/plugins/fundpress/inc/vendors/cmb2/includes/types/CMB2_Type_Textarea_Code.php:13
- > PHP Fatal error
Uncaught Error: Class 'CMB2_Type_Text' not found in wp-content/plugins/fundpress/inc/vendors/cmb2/includes/types/CMB2_Type_Checkbox.php:13
- > PHP Fatal error
Uncaught Error: Class 'CMB2_Hookup_Base' not found in wp-content/plugins/fundpress/inc/vendors/cmb2/includes/rest-api/CMB2_REST.php:19
- > PHP Fatal error
Uncaught Error: Class 'CMB2_Type_Taxonomy_Multicheck' not found in wp-content/plugins/fundpress/inc/vendors/cmb2/includes/types/CMB2_Type_Taxonomy_Multicheck_Hierarchical.php:13
- > PHP Fatal error
Uncaught Error: Class 'CMB2_Type_File_Base' not found in wp-content/plugins/fundpress/inc/vendors/cmb2/includes/types/CMB2_Type_File_List.php:13
- > PHP Fatal error
Uncaught Error: Class 'CMB2_Type_Taxonomy_Radio' not found in wp-content/plugins/fundpress/inc/vendors/cmb2/includes/types/CMB2_Type_Taxonomy_Radio_Hierarchical.php:13
- > PHP Fatal error
Uncaught Error: Class 'CMB2_Type_Base' not found in wp-content/plugins/fundpress/inc/vendors/cmb2/includes/types/CMB2_Type_Title.php:13
- > PHP Fatal error
Uncaught Error: Class 'CMB2_Hookup' not found in wp-content/plugins/fundpress/inc/vendors/cmb2/includes/CMB2_Options_Hookup.php:14
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
No browser issues were found
Optimizations
Plugin configuration 97% from 29 tests
readme.txt 94% from 16 tests
The readme.txt file describes your plugin functionality and requirements and it is parsed to prepare the your plugin's listing
Attributes that need to be fixed:
- Donate link: Please fix this invalid URI: ""
fundpress/fundpress.php Passed 13 tests
"FundPress - WordPress Donation Plugin" version 2.0.6's primary PHP file adds more information about the plugin and serves as the entry point for WordPress
102 characters long description:
Easily build your own crowdfunding platform like Kickstarter with this free WordPress donation plugin.
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | There should be no dangerous file extensions present in any WordPress plugin
Good job! No executable or dangerous file extensions detected67,110 lines of code in 349 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PO File | 120 | 14,315 | 18,502 | 32,323 |
PHP | 165 | 3,851 | 9,968 | 14,116 |
CSS | 21 | 1,231 | 1,334 | 9,598 |
JSON | 2 | 0 | 0 | 4,264 |
Sass | 20 | 695 | 29 | 3,875 |
JavaScript | 16 | 452 | 678 | 2,130 |
Markdown | 4 | 266 | 0 | 785 |
SVG | 1 | 0 | 0 | 19 |
PHP code Passed 2 tests
This plugin's cyclomatic complexity and code structure detailed below
Everything seems fine, there were no complexity issues found
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.47 |
Average class complexity | 16.31 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 186.00 |
Average method complexity | 3.20 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 67.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 113 | |
▷ Abstract classes | 15 | 13.27% |
▷ Concrete classes | 98 | 86.73% |
▷ Final classes | 0 | 0.00% |
Methods | 789 | |
▷ Static methods | 131 | 16.60% |
▷ Public methods | 684 | 86.69% |
▷ Protected methods | 96 | 12.17% |
▷ Private methods | 9 | 1.14% |
Functions | 124 | |
▷ Named functions | 124 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 22 | |
▷ Global constants | 16 | 72.73% |
▷ Class constants | 6 | 27.27% |
▷ Public constants | 6 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
PNG files should be compressed to save space and minimize bandwidth usage
56 PNG files occupy 0.12MB with 0.02MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/images/ui-bg_glass_75_e6e6e6_1x400.png | 0.11KB | 0.14KB | 0.00% |
assets/images/ui-icons_ef8c08_256x240.png | 4.44KB | 4.17KB | ▼ 6.02% |
assets/images/ui-bg_gloss-wave_35_f6a828_500x100.png | 5.68KB | 1.83KB | ▼ 67.77% |
assets/images/ui-bg_glass_75_dadada_1x400.png | 0.11KB | 0.16KB | 0.00% |
assets/css/admin/images/ui-icons_228ef1_256x240.png | 4.44KB | 4.17KB | ▼ 6.02% |