Benchmarks
Plugin footprint 40% from 16 tests
Installer 0% from 1 test
🔺 Critical test (weight: 50) | The install procedure must perform silently
It is recommended to fix the following installer errors
- The plugin cannot be installed
- > User deprecated in wp-includes/functions.php+5316
get_currentuserinfo is deprecated since version 4.5.0! Use wp_get_current_user() instead.
Server metrics [RAM: ▲0.46MB] [CPU: ▼293.79ms] Passed 4 tests
This is a short check of server-side resources used by Nordot: Content Curation & Syndication for WordPress
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.02 ▲0.51 | 56.03 ▲5.39 |
Dashboard /wp-admin | 3.87 ▲0.47 | 35.96 ▲4.24 |
Posts /wp-admin/edit.php | 4.10 ▲0.46 | 40.85 ▲4.11 |
Add New Post /wp-admin/post-new.php | 7.40 ▲0.43 | 93.54 ▼1,183.59 |
Media Library /wp-admin/upload.php | 3.82 ▲0.53 | 25.04 ▲0.08 |
Find Articles /wp-admin/admin.php?page=nordot-submenu-search | 3.74 | 26.11 |
Settings /wp-admin/admin.php?page=nordot-menu-settings | 3.73 | 26.51 |
Server storage [IO: ▲7.91MB] [DB: ▲0.00MB] Passed 3 tests
Filesystem and database footprint
There were no storage issued detected upon installing this plugin
Filesystem: 79 new files
Database: 2 new tables, 2 new options
New tables |
---|
wp_nordot_read_later |
wp_nordot_save_searches |
New WordPress options |
---|
nordot_db_version |
welcome_email_sent |
Browser metrics Passed 4 tests
Nordot: Content Curation & Syndication for WordPress: an overview of browser usage
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,832 ▲88 | 15.82 ▲0.25 | 5.48 ▼1.20 | 2.04 ▼0.22 |
Dashboard /wp-admin | 2,953 ▲95 | 6.15 ▼0.04 | 117.01 ▼14.91 | 157.42 ▼4.80 |
Posts /wp-admin/edit.php | 2,749 ▲55 | 3.25 ▼0.11 | 62.08 ▼1.06 | 139.08 ▼0.39 |
Add New Post /wp-admin/post-new.php | 1,732 ▼20 | 16.65 ▼4.25 | 412.70 ▼55.81 | 174.02 ▲14.43 |
Media Library /wp-admin/upload.php | 1,759 ▲61 | 5.55 ▲0.06 | 136.58 ▼11.61 | 180.55 ▼9.01 |
Find Articles /wp-admin/admin.php?page=nordot-submenu-search | 2,250 | 3.55 | 71.96 | 146.62 |
Settings /wp-admin/admin.php?page=nordot-menu-settings | 1,574 | 3.36 | 68.62 | 252.21 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 50% from 4 tests
🔸 Tests weight: 35 | It is important to correctly uninstall your plugin, without leaving any traces
It is recommended to fix the following
- Uninstall procedure validation failed for this plugin
- > User notice in wp-includes/functions.php+5768
wpdb::prepare was called incorrectly. The query argument of wpdb::prepare() must have a placeholder. Please see Debugging in WordPress for more information. (This message was added in version 3.9.0.)
- Zombie WordPress options detected upon uninstall: 1 option
- nordot_auto_publish_0
Smoke tests 50% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | Just a short smoke test targeting errors on the server (in the Apache logs)
These errors were triggered by the plugin
- 2 occurences, only the last one shown
- > GET request to /wp-admin/admin.php?page=nordot-submenu-search
- > POST request to /wp-admin/admin-ajax.php
- > User notice in wp-includes/functions.php+5768
wpdb::prepare was called incorrectly. The query argument of wpdb::prepare() must have a placeholder. Please see Debugging in WordPress for more information. (This message was added in version 3.9.0.)
SRP 50% 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 items
- 27× GET requests to PHP files have triggered server-side errors or warnings (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Interface 'League\\HTMLToMarkdown\\Converter\\ConverterInterface' not found in wp-content/plugins/nordot/vendor/league/html-to-markdown/src/Converter/ParagraphConverter.php:7
- > PHP Fatal error
Uncaught Error: Interface 'League\\HTMLToMarkdown\\Converter\\ConverterInterface' not found in wp-content/plugins/nordot/vendor/league/html-to-markdown/src/Converter/DivConverter.php:9
- > PHP Warning
require_once(WP_PLUGIN_DIR/nordot/nordot-common.php): failed to open stream: No such file or directory in wp-content/plugins/nordot/vendor/league/html-to-markdown/src/Converter/ImageConverter.php on line 8
- > PHP Fatal error
Uncaught Error: Interface 'League\\HTMLToMarkdown\\Converter\\ConverterInterface' not found in wp-content/plugins/nordot/vendor/league/html-to-markdown/src/Converter/HardBreakConverter.php:9
- > PHP Fatal error
Uncaught Error: Interface 'League\\HTMLToMarkdown\\Converter\\ConverterInterface' not found in wp-content/plugins/nordot/vendor/league/html-to-markdown/src/Converter/EmphasisConverter.php:9
- > PHP Fatal error
Uncaught Error: Interface 'League\\HTMLToMarkdown\\Converter\\ConverterInterface' not found in wp-content/plugins/nordot/vendor/league/html-to-markdown/src/Converter/TextConverter.php:7
- > PHP Fatal error
Uncaught Error: Interface 'League\\HTMLToMarkdown\\Converter\\ConverterInterface' not found in wp-content/plugins/nordot/vendor/league/html-to-markdown/src/Converter/ListBlockConverter.php:7
- > PHP Fatal error
Uncaught Error: Call to undefined function add_action() in wp-content/plugins/nordot/nordot-common.php:6
- > PHP Fatal error
require_once(): Failed opening required 'WP_PLUGIN_DIR/nordot/nordot-common.php' (include_path='.:/usr/share/php') in wp-content/plugins/nordot/vendor/league/html-to-markdown/src/Converter/ImageConverter.php on line 8
- > PHP Fatal error
Uncaught Error: Interface 'League\\HTMLToMarkdown\\Converter\\ConverterInterface' not found in wp-content/plugins/nordot/vendor/league/html-to-markdown/src/Converter/HeaderConverter.php:9
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
No browser errors were detected
Optimizations
Plugin configuration 93% from 29 tests
readme.txt 94% from 16 tests
The readme.txt file is undoubtedly the most important file in your plugin, preparing it for public listing on WordPress.org
These attributes need your attention:
- Tags: You are using too many tags: 14 tag instead of maximum 10
nordot/nordot.php 92% from 13 tests
This is the main PHP file of "Nordot: Content Curation & Syndication for WordPress" version 1.8.4, providing information about the plugin in the header fields and serving as the principal entry point to the plugin's functions
The following require your attention:
- Text Domain: The text domain must be the same as the plugin slug, although optional since WordPress version 4.6
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short review of files and their extensions; it is not recommended to include executable files
Everything looks great! No dangerous files found in this plugin8,738 lines of code in 61 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 40 | 884 | 896 | 3,445 |
SVG | 1 | 0 | 0 | 2,671 |
JavaScript | 7 | 408 | 98 | 1,590 |
Markdown | 3 | 154 | 0 | 376 |
PO File | 1 | 133 | 200 | 352 |
CSS | 4 | 36 | 22 | 169 |
JSON | 3 | 0 | 0 | 121 |
YAML | 2 | 0 | 6 | 14 |
PHP code Passed 2 tests
Analyzing cyclomatic complexity and code structure
All good! No complexity issues found
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.36 |
Average class complexity | 8.07 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 44.00 |
Average method complexity | 2.78 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 18.00 |
Code structure | ||
---|---|---|
Namespaces | 3 | |
Interfaces | 4 | |
Traits | 0 | |
Classes | 26 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 26 | 100.00% |
▷ Final classes | 1 | 3.85% |
Methods | 139 | |
▷ Static methods | 4 | 2.88% |
▷ Public methods | 122 | 87.77% |
▷ Protected methods | 2 | 1.44% |
▷ Private methods | 15 | 10.79% |
Functions | 79 | |
▷ Named functions | 78 | 98.73% |
▷ Anonymous functions | 1 | 1.27% |
Constants | 5 | |
▷ Global constants | 2 | 40.00% |
▷ Class constants | 3 | 60.00% |
▷ Public constants | 3 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
It is recommended to compress PNG files in your plugin to minimize bandwidth usage
2 PNG files occupy 0.03MB with 0.02MB in potential savings
Potential savings
Compression of 2 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
images/NDT_Full.png | 20.12KB | 7.24KB | ▼ 64.01% |
images/bgimg.png | 12.18KB | 4.40KB | ▼ 63.90% |