Benchmarks
Plugin footprint 65% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | The install procedure must perform silently
The plugin installed successfully, without throwing any errors or notices
Server metrics [RAM: ▲5.32MB] [CPU: ▲41.77ms] 75% from 4 tests
This is a short check of server-side resources used by Business Directory Plugin - Easy Listing Directories for WordPress
Please have a look at the following items
- Extra RAM: Extra memory usage must be kept under 5MB (currently 5.32MB on /wp-admin/admin.php?page=wpbdp_admin_payments)
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 7.83 ▲4.37 | 90.93 ▲52.02 |
Dashboard /wp-admin | 8.94 ▲5.60 | 84.17 ▲23.10 |
Posts /wp-admin/edit.php | 9.04 ▲5.69 | 90.45 ▲43.76 |
Add New Post /wp-admin/post-new.php | 11.69 ▲5.80 | 145.12 ▲55.00 |
Media Library /wp-admin/upload.php | 8.86 ▲5.63 | 83.06 ▲48.20 |
Settings /wp-admin/admin.php?page=wpbdp_settings | 8.87 | 85.14 |
Directory Tags /wp-admin/edit-tags.php?taxonomy=wpbdp_tag&post_type=wpbdp_listing | 8.98 | 70.93 |
Themes /wp-admin/admin.php?page=wpbdp-themes | 8.87 | 80.77 |
Directory /wp-admin/admin.php?page=wpbdp_admin | 8.83 | 69.81 |
Directory Content /wp-admin/edit.php?post_type=wpbdp_listing | 8.97 | 78.92 |
Import & Export /wp-admin/admin.php?page=wpbdp_admin_csv | 8.91 | 73.08 |
Modules /wp-admin/admin.php?page=wpbdp-addons | 9.51 | 373.90 |
Plans /wp-admin/admin.php?page=wpbdp-admin-fees | 8.97 | 74.22 |
SMTP /wp-admin/admin.php?page=wpbdp-smtp | 8.85 | 70.81 |
Payment History /wp-admin/admin.php?page=wpbdp_admin_payments | 8.93 | 73.99 |
Server storage [IO: ▲6.17MB] [DB: ▲0.07MB] Passed 3 tests
How much does this plugin use your filesystem and database?
This plugin was installed successfully
Filesystem: 558 new files
Database: 5 new tables, 15 new options
New tables |
---|
wp_wpbdp_form_fields |
wp_wpbdp_plans |
wp_wpbdp_logs |
wp_wpbdp_payments |
wp_wpbdp_listings |
New WordPress options |
---|
wpbdp-show-drip-pointer |
can_compress_scripts |
theysaidso_admin_options |
widget_recent-comments |
wpbdp_category_children |
wpbdp_settings |
widget_wpbdp_randomlistingswidget |
wpbdp-show-tracking-pointer |
db_upgraded |
wpbdp-db-version |
... |
Browser metrics Passed 4 tests
An overview of browser requirements for Business Directory Plugin - Easy Listing Directories for WordPress
This plugin has a minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,923 ▲162 | 14.28 ▼0.28 | 1.69 ▲0.09 | 43.38 ▲1.76 |
Dashboard /wp-admin | 2,329 ▲149 | 5.75 ▲0.11 | 91.77 ▲4.99 | 41.19 ▼2.06 |
Posts /wp-admin/edit.php | 2,229 ▲132 | 2.32 ▲0.32 | 41.48 ▲7.25 | 36.63 ▼1.42 |
Add New Post /wp-admin/post-new.php | 1,583 ▲57 | 21.97 ▼1.14 | 617.54 ▼97.95 | 52.01 ▼5.68 |
Media Library /wp-admin/upload.php | 1,476 ▲76 | 4.21 ▲0.12 | 98.64 ▼19.14 | 46.38 ▼3.30 |
Settings /wp-admin/admin.php?page=wpbdp_settings | 1,452 | 2.69 | 42.77 | 66.32 |
Directory Tags /wp-admin/edit-tags.php?taxonomy=wpbdp_tag&post_type=wpbdp_listing | 1,575 | 2.16 | 30.85 | 35.15 |
Themes /wp-admin/admin.php?page=wpbdp-themes | 1,262 | 2.72 | 45.61 | 31.45 |
Directory /wp-admin/admin.php?page=wpbdp_admin | 1,136 | 2.68 | 36.56 | 21.99 |
Directory Content /wp-admin/edit.php?post_type=wpbdp_listing | 1,764 | 3.11 | 52.59 | 68.09 |
Import & Export /wp-admin/admin.php?page=wpbdp_admin_csv | 2,073 | 2.78 | 46.90 | 45.43 |
Modules /wp-admin/admin.php?page=wpbdp-addons | 1,562 | 2.65 | 38.58 | 77.13 |
Plans /wp-admin/admin.php?page=wpbdp-admin-fees | 1,878 | 3.19 | 67.67 | 45.89 |
SMTP /wp-admin/admin.php?page=wpbdp-smtp | 1,361 | 2.64 | 38.63 | 70.53 |
Payment History /wp-admin/admin.php?page=wpbdp_admin_payments | 1,360 | 2.73 | 43.09 | 25.78 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.07MB] 50% from 4 tests
🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
It is recommended to fix the following
- This plugin does not fully uninstall, leaving 5 tables in the database
- wp_wpbdp_listings
- wp_wpbdp_form_fields
- wp_wpbdp_logs
- wp_wpbdp_payments
- wp_wpbdp_plans
- Zombie WordPress options detected upon uninstall: 15 options
- db_upgraded
- can_compress_scripts
- widget_wpbdp_featuredlistingswidget
- widget_recent-posts
- widget_wpbdp_latestlistingswidget
- widget_wpbdp_randomlistingswidget
- wpbdp-show-tracking-pointer
- wpbdp_settings
- wpbdp-db-version
- wpbdp-show-drip-pointer
- ...
Smoke tests 25% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | This is a short smoke test looking for server-side errors
Please fix the following server-side errors
- 2 occurences, only the last one shown
- > GET request to /wp-admin/edit-tags.php?taxonomy=wpbdp_tag&post_type=wpbdp_listing
- > request to
- > Notice in wp-config.php+20
Undefined index: REQUEST_METHOD
SRP 0% from 2 tests
🔹 Tests weight: 20 | A shallow check of the single-responsibility principle; PHP files should perform no action - including output of placeholder text - and trigger no errors when accessed directly
Please fix the following
- 16× PHP files output non-empty strings when accessed directly via GET requests (only 10 are shown):
- > /wp-content/plugins/business-directory-plugin/includes/models/class-install-plugin.php
- > /wp-content/plugins/business-directory-plugin/includes/admin/views/modules/list.php
- > /wp-content/plugins/business-directory-plugin/includes/controllers/class-addons.php
- > /wp-content/plugins/business-directory-plugin/templates/submit-listing-rootline.tpl.php
- > /wp-content/plugins/business-directory-plugin/includes/admin/helpers/class-modules-api.php
- > /wp-content/plugins/business-directory-plugin/includes/admin/helpers/csv/class-csv-import.php
- > /wp-content/plugins/business-directory-plugin/templates/admin/metaboxes-listing-timeline.tpl.php
- > /wp-content/plugins/business-directory-plugin/includes/helpers/class-currency-helper.php
- > /wp-content/plugins/business-directory-plugin/includes/helpers/class-app.php
- > /wp-content/plugins/business-directory-plugin/includes/admin/views/review.php
- 398× GET requests to PHP files have triggered server-side errors or warnings (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Call to undefined function _deprecated_file() in wp-content/plugins/business-directory-plugin/templates/deprecated/search.tpl.php:2
- > PHP Fatal error
Uncaught Error: Call to undefined function _deprecated_file() in wp-content/plugins/business-directory-plugin/includes/seo.php:2
- > PHP Fatal error
Uncaught Error: Class 'WPBDP__Migration' not found in wp-content/plugins/business-directory-plugin/includes/admin/upgrades/migrations/migration-8_0.php:3
- > PHP Fatal error
require_once(): Failed opening required 'WPBDP_PATHincludes/widgets/class-listings-widget.php' (include_path='.:/usr/share/php') in wp-content/plugins/business-directory-plugin/includes/widgets/widget-latest-listings.php on line 2
- > PHP Fatal error
Uncaught Error: Class 'WPBDP__Migration' not found in wp-content/plugins/business-directory-plugin/includes/admin/upgrades/migrations/migration-12_0.php:3
- > PHP Warning
require_once(WPBDP_INCadmin/helpers/csv/class-csv-import.php): failed to open stream: No such file or directory in wp-content/plugins/business-directory-plugin/includes/admin/csv-import.php on line 8
- > PHP Fatal error
Uncaught Error: Call to undefined function wpbdp_admin_header() in wp-content/plugins/business-directory-plugin/templates/admin/fees-add-fee.tpl.php:2
- > PHP Fatal error
require_once(): Failed opening required 'WPBDP_PATHincludes/helpers/class-authenticated-listing-view.php' (include_path='.:/usr/share/php') in wp-content/plugins/business-directory-plugin/includes/controllers/pages/class-submit-listing.php on line 8
- > PHP Warning
require_once(WPBDP_PATHincludes/widgets/class-listings-widget.php): failed to open stream: No such file or directory in wp-content/plugins/business-directory-plugin/includes/widgets/widget-featured-listings.php on line 2
- > PHP Warning
Use of undefined constant WPBDP_PATH - assumed 'WPBDP_PATH' (this will throw an Error in a future version of PHP) in wp-content/plugins/business-directory-plugin/includes/db/class-db-model.php on line 2
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a shallow check for browser errors
There were no browser issues found
Optimizations
Plugin configuration 97% from 29 tests
readme.txt 94% from 16 tests
The readme.txt file is important because it is parsed by WordPress.org for the public listing of your plugin
These attributes need to be fixed:
- Tags: Please reduce the number of tags, currently 14 tag instead of maximum 10
business-directory-plugin/business-directory-plugin.php Passed 13 tests
The main PHP script in "Business Directory Plugin - Easy Listing Directories for WordPress" version 6.3.10 is automatically included on every request by WordPress
98 characters long description:
Provides the ability to maintain a free or paid business directory on your WordPress powered site.
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 detected101,530 lines of code in 525 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PO File | 9 | 15,313 | 22,066 | 48,899 |
PHP | 359 | 9,492 | 7,432 | 40,596 |
JavaScript | 98 | 2,377 | 1,263 | 10,349 |
CSS | 14 | 58 | 28 | 610 |
Markdown | 8 | 193 | 0 | 501 |
HTML | 1 | 27 | 0 | 331 |
SVG | 33 | 1 | 1 | 208 |
JSON | 2 | 1 | 0 | 27 |
XML | 1 | 0 | 0 | 9 |
PHP code Passed 2 tests
This is a very shot review of cyclomatic complexity and code structure
All good! No complexity issues found
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.39 |
Average class complexity | 24.45 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 278.00 |
Average method complexity | 3.42 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 35.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 1 | |
Traits | 0 | |
Classes | 221 | |
▷ Abstract classes | 2 | 0.90% |
▷ Concrete classes | 219 | 99.10% |
▷ Final classes | 6 | 2.74% |
Methods | 2,140 | |
▷ Static methods | 244 | 11.40% |
▷ Public methods | 1,597 | 74.63% |
▷ Protected methods | 98 | 4.58% |
▷ Private methods | 445 | 20.79% |
Functions | 173 | |
▷ Named functions | 164 | 94.80% |
▷ Anonymous functions | 9 | 5.20% |
Constants | 37 | |
▷ Global constants | 12 | 32.43% |
▷ Class constants | 25 | 67.57% |
▷ Public constants | 25 | 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
9 PNG files occupy 0.09MB with 0.05MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/images/menuico.png | 3.35KB | 0.96KB | ▼ 71.46% |
assets/images/smtp-screenshot-tnail.png | 23.41KB | 24.58KB | 0.00% |
assets/images/paypal-gateway-module.png | 21.64KB | 9.91KB | ▼ 54.23% |
assets/images/payfast-payment-module.png | 8.48KB | 3.25KB | ▼ 61.74% |
assets/images/linkedin.png | 3.63KB | 1.22KB | ▼ 66.42% |