Benchmarks
Plugin footprint 65% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
The plugin installed successfully, without throwing any errors or notices
Server metrics [RAM: ▲0.11MB] [CPU: ▼1.48ms] Passed 4 tests
An overview of server-side resources used by GM Community Gallery
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.57 ▲0.11 | 45.13 ▼2.36 |
Dashboard /wp-admin | 3.42 ▲0.11 | 52.96 ▲1.23 |
Posts /wp-admin/edit.php | 3.53 ▲0.17 | 48.13 ▲1.07 |
Add New Post /wp-admin/post-new.php | 6.00 ▲0.11 | 88.73 ▼3.62 |
Media Library /wp-admin/upload.php | 3.34 ▲0.11 | 38.18 ▼1.02 |
Trash (0) /wp-admin/admin.php?page=gm-community-trash | 3.31 | 35.35 |
Gallery Options /wp-admin/admin.php?page=gm-community-options | 3.31 | 38.62 |
Admin Gallery (0) /wp-admin/admin.php?page=gm-community-gallery | 3.31 | 33.27 |
Server storage [IO: ▲0.21MB] [DB: ▲0.00MB] Passed 3 tests
Input-output and database impact of this plugin
The plugin installed successfully
Filesystem: 37 new files
Database: 1 new table, 6 new options
New tables |
---|
wp_gm_community_gallery |
New WordPress options |
---|
widget_recent-comments |
db_upgraded |
widget_theysaidso_widget |
widget_recent-posts |
theysaidso_admin_options |
can_compress_scripts |
Browser metrics Passed 4 tests
GM Community Gallery: an overview of browser usage
Normal browser usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,933 ▲172 | 13.48 ▼0.87 | 10.12 ▲8.39 | 45.42 ▲1.55 |
Dashboard /wp-admin | 2,222 ▲48 | 5.59 ▲0.02 | 99.87 ▲0.82 | 42.55 ▼4.11 |
Posts /wp-admin/edit.php | 2,133 ▲33 | 2.02 ▼0.11 | 35.78 ▼1.61 | 37.10 ▲0.35 |
Add New Post /wp-admin/post-new.php | 1,553 ▲18 | 22.99 ▲4.97 | 652.04 ▲18.35 | 55.67 ▼17.96 |
Media Library /wp-admin/upload.php | 1,436 ▲36 | 4.17 ▼0.02 | 100.65 ▼5.07 | 43.17 ▼0.40 |
Trash (0) /wp-admin/admin.php?page=gm-community-trash | 796 | 2.03 | 23.98 | 24.68 |
Gallery Options /wp-admin/admin.php?page=gm-community-options | 914 | 2.12 | 25.74 | 27.72 |
Admin Gallery (0) /wp-admin/admin.php?page=gm-community-gallery | 802 | 2.00 | 26.12 | 27.29 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 50% from 4 tests
🔸 Tests weight: 35 | The uninstall procedure must remove all plugin files and extra database tables
You still need to fix the following
- This plugin cannot be uninstalled
- > Warning in wp-content/plugins/gm-community-gallery/gm-community-gallery.php+674
rmdir(wp-content/uploads/gm-community-gallery/images/): Directory not empty
- Zombie WordPress options detected upon uninstall: 6 options
- can_compress_scripts
- widget_recent-posts
- theysaidso_admin_options
- widget_recent-comments
- widget_theysaidso_widget
- db_upgraded
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
Even though everything seems fine, this is not an exhaustive test
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
Please fix the following
- 25× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
- > PHP Warning
require_once(GM_GALLERY_DIRnav/abstract.navigate.php): failed to open stream: No such file or directory in wp-content/plugins/gm-community-gallery/admin/php/class.admin_navigate.php on line 10
- > PHP Warning
Use of undefined constant GM_GALLERY_DIR - assumed 'GM_GALLERY_DIR' (this will throw an Error in a future version of PHP) in wp-content/plugins/gm-community-gallery/admin/php/class.admin_gallery_trash.php on line 10
- > PHP Fatal error
Uncaught Error: Call to undefined function plugin_dir_path() in wp-content/plugins/gm-community-gallery/gm-community-gallery.php:33
- > PHP Fatal error
require_once(): Failed opening required 'GM_GALLERY_DIRadmin/php/abstract.admin_gallery.php' (include_path='.:/usr/share/php') in wp-content/plugins/gm-community-gallery/admin/php/class.admin_gallery_trash.php on line 10
- > PHP Warning
Use of undefined constant GM_GALLERY_DIR - assumed 'GM_GALLERY_DIR' (this will throw an Error in a future version of PHP) in wp-content/plugins/gm-community-gallery/public/php/class.public_gallery.php on line 10
- > PHP Warning
require_once(GM_GALLERY_DIRnav/abstract.gallery.php): failed to open stream: No such file or directory in wp-content/plugins/gm-community-gallery/public/php/class.public_gallery.php on line 10
- > PHP Warning
require_once(GM_GALLERY_DIR/nav/abstract.image_view.php): failed to open stream: No such file or directory in wp-content/plugins/gm-community-gallery/admin/php/class.image_update_form.php on line 12
- > PHP Fatal error
require_once(): Failed opening required 'GM_GALLERY_DIR/nav/abstract.navigate.php' (include_path='.:/usr/share/php') in wp-content/plugins/gm-community-gallery/public/php/class.public_navigate.php on line 12
- > PHP Fatal error
require_once(): Failed opening required 'GM_GALLERY_DIR/nav/abstract.image_view.php' (include_path='.:/usr/share/php') in wp-content/plugins/gm-community-gallery/public/php/class.public_view.php on line 8
- > PHP Warning
require_once(GM_GALLERY_DIRadmin/php/abstract.admin_gallery.php): failed to open stream: No such file or directory in wp-content/plugins/gm-community-gallery/admin/php/class.admin_gallery_trash.php on line 10
- > PHP Warning
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
No browser issues were found
Optimizations
Plugin configuration 96% from 29 tests
readme.txt Passed 16 tests
You should put a lot of thought into formatting readme.txt as it is used by WordPress.org to prepare the public listing of your plugin
10 plugin tags: jpg, uploader, gallery, gif, png...
gm-community-gallery/gm-community-gallery.php 92% from 13 tests
"GM Community Gallery" version 1.0's main PHP file describes plugin functionality and also serves as the entry point to any WordPress functionality
The following require your attention:
- Description: If Twitter did it, so should we! Keep the description under 140 characters (currently 192 characters long)
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | An overview of files in this plugin; executable files are not allowed
Success! There were no dangerous files found in this plugin4,176 lines of code in 35 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 23 | 842 | 1,093 | 2,579 |
CSS | 6 | 144 | 30 | 700 |
JavaScript | 5 | 228 | 221 | 700 |
Markdown | 1 | 75 | 0 | 197 |
PHP code Passed 2 tests
An overview of cyclomatic complexity and code structure
This plugin has no cyclomatic complexity issues
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.23 |
Average class complexity | 11.59 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 46.00 |
Average method complexity | 2.61 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 12.00 |
Code structure | ||
---|---|---|
Namespaces | 4 | |
Interfaces | 0 | |
Traits | 1 | |
Classes | 21 | |
▷ Abstract classes | 4 | 19.05% |
▷ Concrete classes | 17 | 80.95% |
▷ Final classes | 0 | 0.00% |
Methods | 150 | |
▷ Static methods | 0 | 0.00% |
▷ Public methods | 47 | 31.33% |
▷ Protected methods | 103 | 68.67% |
▷ Private methods | 0 | 0.00% |
Functions | 38 | |
▷ Named functions | 38 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 3 | |
▷ Global constants | 3 | 100.00% |
▷ Class constants | 0 | 0.00% |
▷ Public constants | 0 | 0.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
PNG images were not found in this plugin