NextGEN Gallery 4.0.5

Does NextGEN Gallery work with WordPress 6.9.1 and PHP 8.1.12? A smoke test was performed on .

Summary

Errors
8Database errors
No JavaScript exceptions
All test pages loaded successfully
No resource errors
Performance

Memory usage: 1.01 MiB
The average PHP memory usage increased by this amount after activating by the plugin.

Page speed impact: 0.690 seconds
The average page load time increased by this amount after activating the plugin.

Environment
WordPress version6.9.1
PHP version8.1.12
MySQL version10.6.10
PHP memory limit512M
Plugin Info
Last updated
Active installs 400,000+
WordPress.org page https://wordpress.org/plugins/nextgen-gallery/
Badges

WordPress compatibility badge PHP compatibility badge

Get badge code

Pages 9

Imagely › Onboarding Wizard

Page screenshot: Imagely › Onboarding Wizard
URL /wp-admin/index.php?page=nextgen-gallery-setup-wizard
Requested URL /wp-admin/plugins.php?action=activate&plugin=nextgen-gallery%2Fnggallery.php&plugin_status=all&paged=1&s&_wpnonce=f61e522a93
Aspect after-activation
HTTP status 200
Load time 1.422 s
Memory usage 8.04 MiB
JS errors None
Resource errors None

Imagely

Page screenshot: Imagely
URL /wp-admin/admin.php?page=imagely
Aspect menu-item
HTTP status 200
Load time 1.176 s
Memory usage 4.74 MiB
JS errors None
Resource errors None

Imagely → Add New Gallery

Page screenshot: Imagely → Add New Gallery
URL /wp-admin/admin.php?page=imagely
Requested URL /wp-admin/admin.php?page=imagely&create_gallery=1
Aspect menu-item
HTTP status 200
Load time 0.769 s
Memory usage 4.74 MiB
JS errors None
Resource errors None

Imagely → Albums

Page screenshot: Imagely → Albums
URL /wp-admin/admin.php?page=imagely-albums
Aspect menu-item
HTTP status 200
Load time 0.588 s
Memory usage 4.74 MiB
JS errors None
Resource errors None

Imagely → Tags

Page screenshot: Imagely → Tags
URL /wp-admin/admin.php?page=imagely-tags
Aspect menu-item
HTTP status 200
Load time 0.538 s
Memory usage 4.74 MiB
JS errors None
Resource errors None

Imagely → Settings

Page screenshot: Imagely → Settings
URL /wp-admin/admin.php?page=imagely-settings
Aspect menu-item
HTTP status 200
Load time 0.384 s
Memory usage 4.74 MiB
JS errors None
Resource errors None

Imagely → About Us

Page screenshot: Imagely → About Us
URL /wp-admin/admin.php?page=imagely-about-us
Aspect menu-item
HTTP status 200
Load time 0.831 s
Memory usage 4.74 MiB
JS errors None
Resource errors None

Test site – Just another WordPress site

Page screenshot: Test site – Just another WordPress site
URL /
Aspect front-page
HTTP status 200
Load time 0.228 s
Memory usage 4.56 MiB
JS errors None
Resource errors None

Widgets ‹ Test site — WordPress

Page screenshot: Widgets ‹ Test site — WordPress
URL /wp-admin/widgets.php
Aspect new-sidebar-widgets
HTTP status 200
Load time 1.839 s
Memory usage 7.26 MiB
JS errors None
Resource errors None

Benchmark

URL Load time Memory usage
Inactive Active Change Inactive Active Change
/wp-admin/index.php0.531 s1.182 s+0.651 s3.78 MiB4.78 MiB+ 1 MiB
/wp-admin/edit.php0.347 s0.725 s+0.378 s3.78 MiB4.77 MiB+ 1014.91 KiB
/wp-admin/post-new.php0.810 s3.240 s+2.430 s6.31 MiB7.7 MiB+ 1.39 MiB
/wp-admin/upload.php0.529 s1.182 s+0.653 s3.74 MiB4.78 MiB+ 1.05 MiB
/wp-admin/options-writing.php0.306 s0.604 s+0.298 s3.71 MiB4.66 MiB+ 973.96 KiB
/wp-admin/media-new.php0.498 s0.835 s+0.337 s3.7 MiB4.65 MiB+ 973.32 KiB
/wp-admin/edit-tags.php?taxonomy=category0.307 s0.810 s+0.503 s3.72 MiB4.7 MiB+ 1010.53 KiB
/wp-admin/post-new.php?post_type=page0.708 s2.511 s+1.803 s6.3 MiB7.68 MiB+ 1.39 MiB
/wp-admin/options-discussion.php0.459 s0.667 s+0.208 s3.71 MiB4.68 MiB+ 987.39 KiB
/wp-admin/edit-comments.php0.297 s0.590 s+0.293 s3.74 MiB4.72 MiB+ 1012.11 KiB
/0.396 s0.428 s+0.032 s4.11 MiB4.55 MiB+ 452.59 KiB
Average 0.472 s1.161 s+0.690 s4.24 MiB5.24 MiB+ 1.01 MiB

Code Statistics

Note: Third-party libraries and minified JS/CSS files are excluded from these statistics where possible, so the numbers you see here may be lower than those reported by other tools.

PHP
JavaScript
CSS
Language % Lines of code Comment lines Files
PHP49.2%64,08327,608388
JavaScript20.9%27,1762,450188
CSS13.9%18,05045673
SVG7.6%9,875027
PO File6.2%8,0237,2299
Sass1.8%2,33458
Markdown0.3%34202
LESS0.1%15251
JSON0.1%8703
Ruby0.0%801
XML0.0%501
Total 130,135 37,753 701

PHP Code Analysis | More results »

Lines of code 57,947
Total complexity 12,314
Median class complexity 12.0
Median method complexity 2.0
Most complex class lsolesen\pel\PelEntrySShort
Most complex function lsolesen\pel\PelEntrySShort::getText()
Classes 357
Methods 2,827
Functions 34

Additions

Things that the plugin adds to the site. This section is not intended to be comprehensive. The test tool only looks for a few specific types of added content.

Database Tables 3

Options wp_options 8

Custom Post Types 6

ID Name
ngg_albumNextGEN Gallery - Album
ngg_galleryNextGEN Gallery - Gallery
ngg_picturesNextGEN Gallery - Image
displayed_galleryNextGEN Gallery - Displayed Gallery
display_typeNextGEN Gallery - Display Type
gal_display_sourceNextGEN Gallery - Displayed Gallery Source

Sidebar Widgets 3

ID Name
ngg-imagesNextGEN Widget
slideshowNextGEN Slideshow
ngg-mrsswNextGEN Media RSS

Capabilities 10

PHP Error Log 8 lines

[12-Feb-2026 20:45:43 UTC] WordPress database error Table 'wordpress.wp_ngg_gallery' doesn't exist for query SHOW COLUMNS FROM `wp_ngg_gallery` made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/nextgen-gallery/nggallery.php'), C_NextGEN_Bootstrap->__construct, Imagely\NGG\Migrations\AddGalleryDates::migrate
[12-Feb-2026 20:45:43 UTC] WordPress database error Table 'wordpress.wp_ngg_gallery' doesn't exist for query ALTER TABLE `wp_ngg_gallery` ADD COLUMN `date_created` DATETIME made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/nextgen-gallery/nggallery.php'), C_NextGEN_Bootstrap->__construct, Imagely\NGG\Migrations\AddGalleryDates::migrate
[12-Feb-2026 20:45:43 UTC] WordPress database error Table 'wordpress.wp_ngg_gallery' doesn't exist for query ALTER TABLE `wp_ngg_gallery` ADD COLUMN `date_modified` DATETIME made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/nextgen-gallery/nggallery.php'), C_NextGEN_Bootstrap->__construct, Imagely\NGG\Migrations\AddGalleryDates::migrate
[12-Feb-2026 20:45:43 UTC] WordPress database error Table 'wordpress.wp_ngg_album' doesn't exist for query SHOW COLUMNS FROM `wp_ngg_album` made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/nextgen-gallery/nggallery.php'), C_NextGEN_Bootstrap->__construct, Imagely\NGG\Migrations\AddGalleryDates::migrate
[12-Feb-2026 20:45:43 UTC] WordPress database error Table 'wordpress.wp_ngg_album' doesn't exist for query ALTER TABLE `wp_ngg_album` ADD COLUMN `date_created` DATETIME made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/nextgen-gallery/nggallery.php'), C_NextGEN_Bootstrap->__construct, Imagely\NGG\Migrations\AddGalleryDates::migrate
[12-Feb-2026 20:45:43 UTC] WordPress database error Table 'wordpress.wp_ngg_album' doesn't exist for query ALTER TABLE `wp_ngg_album` ADD COLUMN `date_modified` DATETIME made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/nextgen-gallery/nggallery.php'), C_NextGEN_Bootstrap->__construct, Imagely\NGG\Migrations\AddGalleryDates::migrate
[12-Feb-2026 20:45:43 UTC] WordPress database error Table 'wordpress.wp_ngg_gallery' doesn't exist for query UPDATE `wp_ngg_gallery` g INNER JOIN `wp_posts` p ON p.ID = g.extras_post_id SET g.date_created = CASE WHEN p.post_modified_gmt = "0000-00-00 00:00:00" THEN p.post_modified ELSE p.post_modified_gmt END, g.date_modified = CASE WHEN p.post_modified_gmt = "0000-00-00 00:00:00" THEN p.post_modified ELSE p.post_modified_gmt END made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/nextgen-gallery/nggallery.php'), C_NextGEN_Bootstrap->__construct, Imagely\NGG\Migrations\AddGalleryDates::migrate
[12-Feb-2026 20:45:43 UTC] WordPress database error Table 'wordpress.wp_ngg_album' doesn't exist for query UPDATE `wp_ngg_album` a INNER JOIN `wp_posts` p ON p.ID = a.extras_post_id SET a.date_created = CASE WHEN p.post_modified_gmt = "0000-00-00 00:00:00" THEN p.post_modified ELSE p.post_modified_gmt END, a.date_modified = CASE WHEN p.post_modified_gmt = "0000-00-00 00:00:00" THEN p.post_modified ELSE p.post_modified_gmt END made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/nextgen-gallery/nggallery.php'), C_NextGEN_Bootstrap->__construct, Imagely\NGG\Migrations\AddGalleryDates::migrate
See also: All tests for this plugin, How to Hide NextGEN Gallery Admin Menus