Benchmarks
Plugin footprint 64% 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: ▲2.30MB] [CPU: ▲9.53ms] 75% from 4 tests
Analyzing server-side resources used by Multiple Page Generator Plugin - MPG
Please fix the following
- CPU: Total CPU usage should be kept under 500.00ms (currently 4,328.64ms on /wp-admin/admin.php?page=ti-about-multiple_pages_generator_by_porthas)
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 5.75 ▲2.28 | 55.33 ▲15.22 |
Dashboard /wp-admin | 5.67 ▲2.37 | 59.78 ▲9.36 |
Posts /wp-admin/edit.php | 5.71 ▲2.35 | 57.56 ▲14.39 |
Add New Post /wp-admin/post-new.php | 8.18 ▲2.30 | 98.04 ▼0.87 |
Media Library /wp-admin/upload.php | 5.52 ▲2.29 | 62.00 ▲25.90 |
Create New + /wp-admin/admin.php?page=mpg-dataset-library | 5.50 | 1,213.52 |
About Us /wp-admin/admin.php?page=ti-about-multiple_pages_generator_by_porthas | 6.59 | 4,328.64 |
Search settings /wp-admin/admin.php?page=mpg-search-settings | 5.50 | 48.00 |
All Projects /wp-admin/admin.php?page=mpg-project-builder | 5.49 | 47.89 |
Advanced settings /wp-admin/admin.php?page=mpg-advanced-settings | 5.51 | 47.88 |
Server storage [IO: ▲4.11MB] [DB: ▲0.89MB] 67% from 3 tests
Filesystem and database footprint
Please try to fix the following items
- Illegal file modification detected: 2 files (0.00KB) outside of "wp-content/plugins/multiple-pages-generator-by-porthas/" and "wp-content/uploads/"
- (new file) wp-content/mpg-cache/.empty
- (new file) wp-content/mpg-uploads/.empty
Filesystem: 314 new files
Database: 4 new tables, 7 new options
New tables |
---|
wp_mpg_logs |
wp_mpg_projects |
wp_mpg_spintax |
wp_mpg_cache |
New WordPress options |
---|
theysaidso_admin_options |
db_upgraded |
multiple_pages_generator_by_porthas_install |
can_compress_scripts |
widget_theysaidso_widget |
widget_recent-comments |
widget_recent-posts |
Browser metrics Passed 4 tests
A check of browser resources used by Multiple Page Generator Plugin - MPG
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,007 ▲246 | 14.22 ▼0.16 | 2.00 ▲0.30 | 29.25 ▼13.56 |
Dashboard /wp-admin | 2,391 ▲214 | 5.58 ▼0.02 | 82.79 ▼22.81 | 83.26 ▲38.80 |
Posts /wp-admin/edit.php | 2,168 ▲68 | 1.98 ▼0.03 | 33.29 ▼3.30 | 34.54 ▲4.72 |
Add New Post /wp-admin/post-new.php | 1,582 ▲29 | 23.80 ▲5.61 | 644.54 ▲9.50 | 46.84 ▼25.50 |
Media Library /wp-admin/upload.php | 1,462 ▲59 | 4.11 ▼0.06 | 104.17 ▲12.39 | 77.11 ▲36.95 |
Create New + /wp-admin/admin.php?page=mpg-dataset-library | 1,820 | 10.19 | 266.74 | 249.60 |
About Us /wp-admin/admin.php?page=ti-about-multiple_pages_generator_by_porthas | 1,160 | 6.49 | 136.98 | 88.51 |
Search settings /wp-admin/admin.php?page=mpg-search-settings | 1,392 | 4.42 | 56.18 | 88.75 |
All Projects /wp-admin/admin.php?page=mpg-project-builder | 1,053 | 2.05 | 25.60 | 24.69 |
Advanced settings /wp-admin/admin.php?page=mpg-advanced-settings | 1,522 | 4.62 | 62.07 | 81.47 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.89MB] 50% from 4 tests
🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
You still need to fix the following
- The uninstall procedure failed, leaving 4 tables in the database
- wp_mpg_projects
- wp_mpg_cache
- wp_mpg_logs
- wp_mpg_spintax
- The uninstall procedure has failed, leaving 7 options in the database
- widget_recent-comments
- can_compress_scripts
- theysaidso_admin_options
- widget_recent-posts
- multiple_pages_generator_by_porthas_install
- widget_theysaidso_widget
- db_upgraded
Smoke tests 50% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
These errors were triggered by the plugin
- > GET request to /wp-admin/admin.php?page=mpg-dataset-library
- > Warning in wp-admin/includes/class-wp-filesystem-direct.php+558
mkdir(): File exists
SRP 50% from 2 tests
🔹 Tests weight: 20 | The single-responsibility principle: PHP files have to remain inert when accessed directly, throwing no errors and performing no actions
The following issues need your attention
- 96× GET requests to PHP files have triggered server-side errors or warnings (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Interface 'Box\\Spout\\Writer\\WriterInterface' not found in wp-content/plugins/multiple-pages-generator-by-porthas/lib/src/Spout/Writer/WriterAbstract.php:22
- > PHP Fatal error
Uncaught Error: Interface 'Box\\Spout\\Writer\\Common\\Manager\\Style\\StyleManagerInterface' not found in wp-content/plugins/multiple-pages-generator-by-porthas/lib/src/Spout/Writer/Common/Manager/Style/StyleManager.php:12
- > PHP Fatal error
Uncaught Error: Class 'Box\\Spout\\Writer\\Common\\Manager\\Style\\StyleRegistry' not found in wp-content/plugins/multiple-pages-generator-by-porthas/lib/src/Spout/Writer/ODS/Manager/Style/StyleRegistry.php:11
- > PHP Fatal error
Uncaught Error: Interface 'Box\\Spout\\Reader\\SheetInterface' not found in wp-content/plugins/multiple-pages-generator-by-porthas/lib/src/Spout/Reader/CSV/Sheet.php:10
- > PHP Fatal error
Uncaught Error: Interface 'Box\\Spout\\Reader\\SheetInterface' not found in wp-content/plugins/multiple-pages-generator-by-porthas/lib/src/Spout/Reader/ODS/Sheet.php:11
- > PHP Fatal error
Uncaught Error: Class 'Box\\Spout\\Writer\\Exception\\WriterException' not found in wp-content/plugins/multiple-pages-generator-by-porthas/lib/src/Spout/Writer/Exception/Border/InvalidStyleException.php:8
- > PHP Fatal error
Uncaught Error: Interface 'Box\\Spout\\Writer\\Common\\Manager\\WorksheetManagerInterface' not found in wp-content/plugins/multiple-pages-generator-by-porthas/lib/src/Spout/Writer/ODS/Manager/WorksheetManager.php:22
- > PHP Fatal error
Uncaught Error: Class 'Box\\Spout\\Common\\Exception\\SpoutException' not found in wp-content/plugins/multiple-pages-generator-by-porthas/lib/src/Spout/Common/Exception/EncodingConversionException.php:8
- > PHP Fatal error
Uncaught Error: Interface 'Box\\Spout\\Common\\Helper\\Escaper\\EscaperInterface' not found in wp-content/plugins/multiple-pages-generator-by-porthas/lib/src/Spout/Common/Helper/Escaper/ODS.php:9
- > PHP Fatal error
Uncaught Error: Class 'Box\\Spout\\Common\\Manager\\OptionsManagerAbstract' not found in wp-content/plugins/multiple-pages-generator-by-porthas/lib/src/Spout/Writer/ODS/Manager/OptionsManager.php:13
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
No browser issues were found
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
10 plugin tags: csv, keyword, landing page, bulk edit, template...
multiple-pages-generator-by-porthas/porthas-multi-pages-generator.php 92% from 13 tests
The principal PHP file in "Multiple Page Generator Plugin - MPG" v. 3.3.23 is loaded by WordPress automatically on each request
Please take the time to fix the following:
- Main file name: The principal plugin file should be the same as the plugin slug ("multiple-pages-generator-by-porthas.php" instead of "porthas-multi-pages-generator.php")
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 detected34,297 lines of code in 278 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 218 | 5,022 | 8,544 | 19,433 |
PO File | 11 | 2,635 | 3,118 | 7,967 |
JavaScript | 32 | 1,262 | 562 | 4,218 |
CSS | 9 | 192 | 33 | 1,631 |
Sass | 1 | 172 | 0 | 954 |
JSON | 1 | 0 | 0 | 45 |
SVG | 5 | 0 | 0 | 35 |
XML | 1 | 0 | 0 | 14 |
PHP code Passed 2 tests
Cyclomatic complexity and code structure are the fingerprint of this plugin
There are no cyclomatic complexity problems detected for this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.32 |
Average class complexity | 12.14 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 149.00 |
Average method complexity | 2.59 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 57.00 |
Code structure | ||
---|---|---|
Namespaces | 54 | |
Interfaces | 14 | |
Traits | 1 | |
Classes | 173 | |
▷ Abstract classes | 14 | 8.09% |
▷ Concrete classes | 159 | 91.91% |
▷ Final classes | 1 | 0.63% |
Methods | 1,234 | |
▷ Static methods | 238 | 19.29% |
▷ Public methods | 911 | 73.82% |
▷ Protected methods | 182 | 14.75% |
▷ Private methods | 141 | 11.43% |
Functions | 104 | |
▷ Named functions | 12 | 11.54% |
▷ Anonymous functions | 92 | 88.46% |
Constants | 254 | |
▷ Global constants | 14 | 5.51% |
▷ Class constants | 240 | 94.49% |
▷ Public constants | 240 | 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
10 compressed PNG files occupy 0.30MB
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
vendor/codeinwp/themeisle-sdk/assets/images/otter/otter-library.png | 173.18KB | 173.42KB | 0.00% |
frontend/libs/images/sort_both.png | 0.20KB | 0.29KB | 0.00% |
vendor/codeinwp/themeisle-sdk/assets/images/wplk.png | 1.92KB | 1.27KB | ▼ 33.69% |
frontend/libs/images/sort_desc.png | 0.15KB | 0.25KB | 0.00% |
frontend/libs/images/sort_asc.png | 0.16KB | 0.25KB | 0.00% |