Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
Installer ran successfully
Server metrics [RAM: ▲1.95MB] [CPU: ▲14.16ms] Passed 4 tests
Analyzing server-side resources used by ConvertKit - Email Marketing, Email Newsletter, Subscribers and Landing Pages
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.82 ▲1.35 | 46.21 ▲5.47 |
Dashboard /wp-admin | 5.48 ▲2.17 | 70.51 ▲18.94 |
Posts /wp-admin/edit.php | 5.54 ▲2.18 | 72.03 ▲22.22 |
Add New Post /wp-admin/post-new.php | 8.07 ▲2.18 | 110.37 ▲10.79 |
Media Library /wp-admin/upload.php | 5.34 ▲2.11 | 57.51 ▲21.45 |
/wp-admin/admin.php?page=convertkit-setup | 5.27 | 47.01 |
/wp-admin/admin.php?page=convertkit-restrict-content-setup | 5.15 | 43.94 |
ConvertKit /wp-admin/options-general.php?page=_wp_convertkit_settings | 5.31 | 54.49 |
Server storage [IO: ▲1.14MB] [DB: ▲0.00MB] Passed 3 tests
Input-output and database impact of this plugin
The plugin installed successfully
Filesystem: 183 new files
Database: no new tables, 8 new options
New WordPress options |
---|
widget_recent-comments |
widget_convertkit_form |
widget_recent-posts |
widget_theysaidso_widget |
convertkit_version |
db_upgraded |
can_compress_scripts |
theysaidso_admin_options |
Browser metrics Passed 4 tests
ConvertKit - Email Marketing, Email Newsletter, Subscribers and Landing Pages: an overview of browser usage
This plugin has a minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,949 ▲187 | 13.93 ▼0.78 | 7.79 ▲6.02 | 38.64 ▼5.75 |
Dashboard /wp-admin | 2,259 ▲82 | 5.88 ▲0.24 | 107.13 ▲11.50 | 42.49 ▲0.03 |
Posts /wp-admin/edit.php | 2,187 ▲87 | 2.36 ▲0.43 | 40.95 ▼0.72 | 53.34 ▲20.91 |
Add New Post /wp-admin/post-new.php | 1,632 ▲106 | 23.24 ▼0.12 | 700.07 ▲106.33 | 41.28 ▼12.76 |
Media Library /wp-admin/upload.php | 1,454 ▲54 | 4.42 ▲0.18 | 100.72 ▲1.00 | 42.46 ▲0.57 |
/wp-admin/admin.php?page=convertkit-setup | 347 | 2.09 | 29.14 | 24.01 |
/wp-admin/admin.php?page=convertkit-restrict-content-setup | 28 | 0.41 | 0.10 | 3.59 |
ConvertKit /wp-admin/options-general.php?page=_wp_convertkit_settings | 1,069 | 2.33 | 32.72 | 57.78 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
The following items require your attention
- Zombie WordPress options detected upon uninstall: 8 options
- widget_theysaidso_widget
- theysaidso_admin_options
- convertkit_version
- widget_convertkit_form
- db_upgraded
- widget_recent-posts
- can_compress_scripts
- widget_recent-comments
Smoke tests 25% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no server-side errors were triggered
The smoke test was a success, however most plugin functionality was not tested
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 perform the action of outputting non-empty strings when accessed directly:
- > /wp-content/plugins/convertkit/views/backend/setup-wizard/close-modal.php
- 72× PHP files trigger server-side errors or warnings when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_html_e() in wp-content/plugins/convertkit/views/backend/post/quick-edit.php:14
- > PHP Fatal error
Uncaught Error: Class 'ConvertKit_Resource' not found in wp-content/plugins/convertkit/includes/class-convertkit-resource-forms.php:15
- > PHP Notice
Trying to access array offset on value of type null in wp-content/plugins/convertkit/views/backend/tinymce/modal-field.php on line 9
- > PHP Fatal error
Uncaught Error: Class 'ConvertKit_Resource' not found in wp-content/plugins/convertkit/includes/class-convertkit-resource-landing-pages.php:15
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_attr() in wp-content/plugins/convertkit/vendor/convertkit/convertkit-wordpress-libraries/src/views/review-request.php:11
- > PHP Fatal error
Uncaught Error: Class 'ConvertKit_Elementor_Widget' not found in wp-content/plugins/convertkit/includes/integrations/elementor/class-convertkit-elementor-widget-form.php:15
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_attr() in wp-content/plugins/convertkit/views/frontend/restrict-content/product-email.php:12
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_html_e() in wp-content/plugins/convertkit/views/backend/post/meta-box.php:15
- > PHP Warning
Use of undefined constant ABSPATH - assumed 'ABSPATH' (this will throw an Error in a future version of PHP) in wp-content/plugins/convertkit/admin/class-multi-value-field-table.php on line 13
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_html_e() in wp-content/plugins/convertkit/views/backend/setup-wizard/convertkit-restrict-content-setup/content-1.php:11
- > PHP Fatal error
User-side errors 0% from 1 test
🔹 Test weight: 20 | Just a short smoke test targeting errors on the browser (console and network errors and warnings)
Please take a look at the following user-side issues
- > GET request to /wp-admin/admin.php?page=convertkit-restrict-content-setup
- > Network (severe)
wp-admin/admin.php?page=convertkit-restrict-content-setup - Failed to load resource: the server responded with a status of 500 (Internal Server Error)
Optimizations
Plugin configuration 96% from 29 tests
readme.txt Passed 16 tests
The readme.txt file describes your plugin functionality and requirements and it is parsed to prepare the your plugin's listing
5 plugin tags: email marketing, subscribers, newsletter, email newsletter, membership
convertkit/wp-convertkit.php 92% from 13 tests
The main PHP script in "ConvertKit - Email Marketing, Email Newsletter, Subscribers and Landing Pages" version 2.3.8 is automatically included on every request by WordPress
It is important to fix the following:
- Main file name: It is recommended to name the main PHP file as the plugin slug ("convertkit.php" instead of "wp-convertkit.php")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | An overview of files in this plugin; executable files are not allowed
There were no executable files found in this plugin13,788 lines of code in 174 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 114 | 4,153 | 9,580 | 10,947 |
JavaScript | 27 | 505 | 990 | 1,532 |
CSS | 15 | 43 | 117 | 1,071 |
JSON | 4 | 0 | 0 | 180 |
SVG | 14 | 0 | 0 | 58 |
PHP code Passed 2 tests
A short review of cyclomatic complexity and code structure
No complexity issues detected
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.31 |
Average class complexity | 13.99 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 126.00 |
Average method complexity | 2.59 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 24.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 78 | |
▷ Abstract classes | 1 | 1.28% |
▷ Concrete classes | 77 | 98.72% |
▷ Final classes | 0 | 0.00% |
Methods | 628 | |
▷ Static methods | 1 | 0.16% |
▷ Public methods | 534 | 85.03% |
▷ Protected methods | 2 | 0.32% |
▷ Private methods | 92 | 14.65% |
Functions | 43 | |
▷ Named functions | 26 | 60.47% |
▷ Anonymous functions | 17 | 39.53% |
Constants | 16 | |
▷ Global constants | 5 | 31.25% |
▷ Class constants | 11 | 68.75% |
▷ Public constants | 11 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
All PNG images should be compressed to minimize bandwidth usage for end users
6 PNG files occupy 0.26MB with 0.07MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
resources/backend/images/tag.png | 0.41KB | 0.28KB | ▼ 32.86% |
resources/backend/images/block-example-formtrigger.png | 42.49KB | 44.07KB | 0.00% |
resources/backend/images/block-example-product.png | 16.36KB | 18.00KB | 0.00% |
resources/backend/images/members.png | 0.59KB | 0.38KB | ▼ 34.98% |
resources/backend/images/block-example-form.png | 190.35KB | 50.34KB | ▼ 73.55% |