Benchmarks
Plugin footprint 40% from 16 tests
Installer 0% from 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
These installer errors require your attention
- The plugin cannot be installed
- > Deprecated in wp-content/plugins/ddirections/ddirections.php+550
Function create_function() is deprecated
Server metrics [RAM: ▼1.97MB] [CPU: ▼59.02ms] Passed 4 tests
An overview of server-side resources used by Driving Directions
This plugin has minimal impact on server resources
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 2.03 ▼1.44 | 4.93 ▼36.47 |
Dashboard /wp-admin | 2.05 ▼1.30 | 5.91 ▼54.92 |
Posts /wp-admin/edit.php | 2.05 ▼1.31 | 6.13 ▼46.59 |
Add New Post /wp-admin/post-new.php | 2.05 ▼3.84 | 6.75 ▼98.08 |
Media Library /wp-admin/upload.php | 2.05 ▼1.18 | 6.48 ▼29.20 |
Driving Directions /wp-admin/options-general.php?page=ddirections | 2.05 | 6.51 |
Server storage [IO: ▲0.28MB] [DB: ▲0.07MB] Passed 3 tests
A short overview of filesystem and database impact
The plugin installed successfully
Filesystem: 20 new files
Database: no new tables, 8 new options
New WordPress options |
---|
widget_theysaidso_widget |
can_compress_scripts |
widget_recent-comments |
widget_recent-posts |
posk_options |
widget_ddirectionswidget |
theysaidso_admin_options |
db_upgraded |
Browser metrics Passed 4 tests
Checking browser requirements for Driving Directions
Normal browser usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,793 ▲32 | 14.40 ▼0.02 | 1.78 ▼0.00 | 43.85 ▲0.32 |
Dashboard /wp-admin | 2,202 ▲28 | 5.58 ▼0.01 | 91.20 ▲4.08 | 47.81 ▲7.97 |
Posts /wp-admin/edit.php | 2,107 ▲7 | 2.04 ▼0.00 | 34.05 ▼6.65 | 38.07 ▼0.86 |
Add New Post /wp-admin/post-new.php | 1,565 ▲10 | 23.30 ▲4.87 | 641.39 ▲19.85 | 51.75 ▼0.45 |
Media Library /wp-admin/upload.php | 1,404 ▲4 | 4.30 ▲0.06 | 96.72 ▼9.41 | 41.65 ▼4.71 |
Driving Directions /wp-admin/options-general.php?page=ddirections | 1,250 | 4.10 | 65.27 | 44.44 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.07MB] 50% from 4 tests
🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
Please fix the following items
- This plugin did not uninstall without warnings or errors
- > Deprecated in wp-content/plugins/ddirections/ddirections.php+550
Function create_function() is deprecated
- The uninstall procedure has failed, leaving 7 options in the database
- widget_ddirectionswidget
- widget_recent-comments
- widget_theysaidso_widget
- theysaidso_admin_options
- can_compress_scripts
- db_upgraded
- widget_recent-posts
Smoke tests 25% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | This is a shallow check for server-side errors
Please fix the following server-side errors
- > GET request to /wp-admin/options-general.php?page=ddirections
- > Deprecated in wp-content/plugins/ddirections/ddirections.php+550
Function create_function() is deprecated
- > GET request to /wp-admin/options-general.php?page=ddirections
- > User deprecated in wp-includes/functions.php+5546
The called constructor method for WP_Widget class in DDirectionsWidget is deprecated since version 4.3.0! Use __construct() instead.
- > GET request to /wp-admin/options-general.php?page=ddirections
- > Notice in wp-content/plugins/ddirections/ddirections.php+248
Undefined index: scrolltop
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
Almost there! Just fix the following items
- 2× PHP files trigger server-side errors or warnings when accessed directly:
- > PHP Fatal error
Uncaught Error: Call to undefined function add_action() in wp-content/plugins/ddirections/ddirections.php:16
- > PHP Fatal error
Uncaught Error: Call to undefined function add_action() in wp-content/plugins/ddirections/help.php:50
- > PHP Fatal error
User-side errors 0% from 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
There are user-side issues you should fix
- > GET request to /wp-admin/options-general.php?page=ddirections
- > Console-api (warning) in unknown
https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&ver=6.3.1 210:51 "Google Maps JavaScript API has been loaded directly without a callback. This is not supported and can lead to race conditions and suboptimal performance. For supported loading patterns please see https://goo.gle/js-api-loading"
- > GET request to /wp-admin/options-general.php?page=ddirections
- > Console-api (warning) in unknown
https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&ver=6.3.1 139:311 "google.maps.event.addDomListener() is deprecated, use the standard\naddEventListener() method instead:\nhttps://developer.mozilla.org/docs/Web/API/EventTarget/addEventListener\nThe feature will continue to work and there is no plan to decommission\nit."
Optimizations
Plugin configuration 97% 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
These attributes need your attention:
- Screenshots: A description for screenshot #1 is required in ddirections/assets to your readme.txt
ddirections/ddirections.php Passed 13 tests
The main PHP script in "Driving Directions" version 1.4.4 is automatically included on every request by WordPress
55 characters long description:
Driving directions with geolocation and mobile support.
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
No dangerous file extensions were detected1,434 lines of code in 11 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PO File | 6 | 344 | 400 | 737 |
PHP | 2 | 110 | 109 | 383 |
JavaScript | 2 | 68 | 69 | 286 |
CSS | 1 | 8 | 0 | 28 |
PHP code Passed 2 tests
An short overview of logical lines of code, cyclomatic complexity, and other code metrics
All good! No complexity issues found
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.16 |
Average class complexity | 7.00 |
▷ Minimum class complexity | 7.00 |
▷ Maximum class complexity | 7.00 |
Average method complexity | 2.50 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 6.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 1 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 1 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 4 | |
▷ Static methods | 0 | 0.00% |
▷ Public methods | 4 | 100.00% |
▷ Protected methods | 0 | 0.00% |
▷ Private methods | 0 | 0.00% |
Functions | 15 | |
▷ Named functions | 15 | 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
Often times overlooked, PNG files can occupy unnecessary space in your plugin
2 PNG files occupy 0.15MB with 0.08MB in potential savings
Potential savings
Compression of 2 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
images/hg_logo.png | 3.75KB | 2.02KB | ▼ 46.28% |
screenshot-1.png | 153.90KB | 61.08KB | ▼ 60.31% |