Benchmarks
Plugin footprint Passed 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | All plugins must install correctly, without throwing any errors, warnings, or notices
Installer ran successfully
Server metrics [RAM: ▲0.86MB] [CPU: ▼298.49ms] Passed 4 tests
This is a short check of server-side resources used by Job Manager With Structured Data
Normal server usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.42 ▲0.90 | 71.20 ▲14.15 |
Dashboard /wp-admin | 4.27 ▲0.87 | 41.26 ▲6.31 |
Posts /wp-admin/edit.php | 4.50 ▲0.86 | 101.74 ▲64.79 |
Add New Post /wp-admin/post-new.php | 7.83 ▲0.86 | 98.73 ▼1,209.06 |
Media Library /wp-admin/upload.php | 4.15 ▲0.86 | 28.22 ▼5.36 |
Add New /wp-admin/post-new.php?post_type=df-job | 7.82 | 95.45 |
All Jobs /wp-admin/edit.php?post_type=df-job | 4.26 | 36.10 |
Install Plugins /wp-admin/plugins.php?page=tgmpa-install-plugins | 4.22 | 28.26 |
Job Categories /wp-admin/edit-tags.php?taxonomy=df-job-taxonomy&post_type=df-job | 4.15 | 29.35 |
Server storage [IO: ▲0.96MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
No storage issues were detected
Filesystem: 152 new files
Database: no new tables, no new options
Browser metrics Passed 4 tests
Checking browser requirements for Job Manager With Structured Data
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,864 ▲127 | 15.73 ▼0.26 | 6.34 ▲0.08 | 2.21 ▼0.56 |
Dashboard /wp-admin | 2,971 ▲113 | 6.15 ▼0.12 | 121.78 ▼15.90 | 174.32 ▼24.64 |
Posts /wp-admin/edit.php | 2,772 ▲84 | 3.26 ▲0.02 | 64.88 ▲0.78 | 162.01 ▲15.07 |
Add New Post /wp-admin/post-new.php | 1,746 ▲107 | 21.13 ▼0.33 | 484.48 ▲60.87 | 168.88 ▲3.74 |
Media Library /wp-admin/upload.php | 1,784 ▲89 | 5.60 ▲0.08 | 142.27 ▼8.20 | 274.70 ▲54.35 |
Add New /wp-admin/post-new.php?post_type=df-job | 9,412 | 18.03 | 622.57 | 141.99 |
All Jobs /wp-admin/edit.php?post_type=df-job | 1,480 | 3.17 | 63.91 | 198.57 |
Install Plugins /wp-admin/plugins.php?page=tgmpa-install-plugins | 1,289 | 2.44 | 56.24 | 129.84 |
Job Categories /wp-admin/edit-tags.php?taxonomy=df-job-taxonomy&post_type=df-job | 1,671 | 2.93 | 58.55 | 129.01 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] Passed 4 tests
🔸 Tests weight: 35 | It is important to correctly uninstall your plugin, without leaving any traces
Uninstaller ran successfully
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | This is a shallow check for server-side errors
The smoke test was a success, however most plugin functionality was not tested
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
Please fix the following items
- 28× GET requests to PHP files trigger server-side errors or Error 500 responses (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit\\Framework\\TestCase' not found in wp-content/plugins/df-job-manager/vendor/pimple/pimple/src/Pimple/Tests/Psr11/ServiceLocatorTest.php:39
- > PHP Fatal error
Uncaught Error: Interface 'Psr\\Container\\ContainerExceptionInterface' not found in wp-content/plugins/df-job-manager/vendor/pimple/pimple/src/Pimple/Exception/FrozenServiceException.php:36
- > PHP Fatal error
Uncaught Error: Interface 'Psr\\Container\\ContainerInterface' not found in wp-content/plugins/df-job-manager/vendor/pimple/pimple/src/Pimple/Psr11/ServiceLocator.php:38
- > PHP Notice
Undefined variable: post in wp-content/plugins/df-job-manager/resources/views/shortcodes/df-job.php on line 2
- > PHP Fatal error
Uncaught Error: Interface 'Psr\\Container\otFoundExceptionInterface' not found in wp-content/plugins/df-job-manager/vendor/pimple/pimple/src/Pimple/Exception/UnknownIdentifierException.php:36
- > PHP Fatal error
Uncaught Error: Call to undefined function add_action() in wp-content/plugins/df-job-manager/libraries/cmb2-conditionals-1.0.4/example-functions.php:26
- > PHP Notice
Trying to get property 'post_title' of non-object in wp-content/plugins/df-job-manager/resources/views/shortcodes/df-job.php on line 2
- > PHP Warning
Use of undefined constant WP_CONTENT_DIR - assumed 'WP_CONTENT_DIR' (this will throw an Error in a future version of PHP) in wp-content/plugins/df-job-manager/libraries/cmb2-conditionals-1.0.4/example-functions.php on line 18
- > PHP Fatal error
Uncaught Error: Interface 'Psr\\Container\otFoundExceptionInterface' not found in wp-content/plugins/df-job-manager/vendor/pimple/pimple/src/Pimple/Exception/InvalidServiceIdentifierException.php:36
- > PHP Fatal error
Uncaught Error: Call to undefined function did_action() in wp-content/plugins/df-job-manager/libraries/TGM-Plugin-Activation-2.6.1/class-tgm-plugin-activation.php:2165
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no browser errors were triggered
Everything seems fine, but this is not an exhaustive test
Optimizations
Plugin configuration 96% from 29 tests
readme.txt Passed 16 tests
The readme.txt file is undoubtedly the most important file in your plugin, preparing it for public listing on WordPress.org
3 plugin tags: structured data, job listing, seo
df-job-manager/df-job-manager.php 92% from 13 tests
The principal PHP file in "Job Manager With Structured Data" v. 1.1.0 is loaded by WordPress automatically on each request
It is important to fix the following:
- Domain Path: The domain path folder does not exist ("/languages")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short check of programming languages and file extensions; no executable files are allowed
Good job! No executable or dangerous file extensions detected13,208 lines of code in 119 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 80 | 1,351 | 3,004 | 6,065 |
PO File | 17 | 1,449 | 1,993 | 4,842 |
C | 1 | 188 | 47 | 879 |
Markdown | 7 | 198 | 0 | 809 |
JSON | 3 | 0 | 0 | 161 |
C/C++ Header | 2 | 40 | 46 | 132 |
reStructuredText | 1 | 94 | 135 | 97 |
Sass | 3 | 8 | 0 | 81 |
JavaScript | 1 | 15 | 0 | 52 |
m4 | 1 | 11 | 11 | 41 |
YAML | 1 | 5 | 0 | 35 |
XML | 1 | 1 | 0 | 13 |
CSS | 1 | 0 | 0 | 1 |
PHP code Passed 2 tests
A brief analysis of cyclomatic complexity and code structure for this plugin
There are no cyclomatic complexity problems detected for this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.35 |
Average class complexity | 11.21 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 206.00 |
Average method complexity | 3.00 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 34.00 |
Code structure | ||
---|---|---|
Namespaces | 9 | |
Interfaces | 4 | |
Traits | 0 | |
Classes | 48 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 48 | 100.00% |
▷ Final classes | 2 | 4.17% |
Methods | 300 | |
▷ Static methods | 11 | 3.67% |
▷ Public methods | 272 | 90.67% |
▷ Protected methods | 26 | 8.67% |
▷ Private methods | 2 | 0.67% |
Functions | 91 | |
▷ Named functions | 12 | 13.19% |
▷ Anonymous functions | 79 | 86.81% |
Constants | 8 | |
▷ Global constants | 5 | 62.50% |
▷ Class constants | 3 | 37.50% |
▷ Public constants | 3 | 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
2 compressed PNG files occupy 0.00MB
Potential savings
Compression of 2 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
resources/images/df-logo.png | 1.13KB | 1.06KB | ▼ 5.88% |
resources/images/location-on.png | 0.45KB | 0.80KB | 0.00% |