Essential Grid - Best Gallery WordPress Plugin v3.2.12
Version 3.2.12 (4 November 2026)
BUGFIX
- Load More: on a grid whose start order (such as Menu Order) is not one of its sort menu's options, the loaded items now appear after the ones shown and the grid keeps its order; before, Load More could sort all items by their text
- Page cache: Load More, the lightbox's post content and the Ajax container no longer fail with "Request not verified" on pages that a page cache kept longer than the security token's lifetime (12 to 24 hours); the grid search and all other front-end requests keep the token check
- Grid editor: "Hide Blank Items At" and "Even Layout on Device" (Cobbles) name the right device again (since Desktop XL was added, each option named the device one size below the one it applies from); saved grids work as before, and the new last option, Mobile, applies to the smallest screens only
Essential Grid - Best Gallery WordPress Plugin v3.2.11
= Version 3.2.11 (1 November 2026)
CHANGES
BUGFIX
- Grid cache: a grid that shows other grids inside its items is no longer cached, so the grids inside it keep their own IDs; it renders on every view
- Grid cache: the same grid shown twice on a page (such as in the content and in a widget) no longer gets the same element ID twice when it comes from the cache, so both copies start and each has its own API
- Grid cache: with "JS To Footer" on, Load More loads the next items on a grid that comes from the cache
- Polylang and WPML: a post saved, trashed or deleted in a translated category or tag now refreshes the cached grid in every language, also when it is saved without a current language (the admin on "All languages", WP-CLI, scheduled posts, imports); before, the other languages' pages could show the grid without the change for up to seven days
Essential Grid - Best Gallery WordPress Plugin v3.2.10
Version 3.2.10 (31 October 2026)
CHANGES
BUGFIX
- Security: The shortcode builder reads only its own settings and custom item fields from a shortcode, and only as text, so a shortcode opened in the builder can no longer add markup, change fields outside the builder or alter the page's script objects
- Grid cache: switching a plugin on or off, or switching the theme, now clears every cached grid, so a grid cached while a plugin was off (such as a WooCommerce product grid) no longer stays empty
- Demo posts: the six video posts that Import demo posts creates now play ThemePunch's own YouTube videos instead of third-party videos and video files; posts imported before stay as they are
- Classic editor: the Essential Grid button is back in the toolbar (missing since 3.1.6), and the shortcode goes into the editor whose button was clicked
- Shortcode builder: a custom grid shortcode with more than ten items keeps its item order when it is opened in the builder and inserted again
- Polylang: each language has its own grid cache entry, so a page no longer shows a grid cached in another language
- Polylang: a grid's filter buttons use the terms of the page's language, so translated pages show their filter buttons instead of only "All"
- Front end: Vimeo videos that fail to load no longer cause errors in the browser console
- Item skins: an empty meta value (such as the stock of a WooCommerce product without stock management) no longer causes a PHP deprecation notice on PHP 8.1 and newer
- Custom meta: a multi-select value that is not stored as a list (older or imported data) no longer causes a fatal error on PHP 8
- Plugin loading: hidden PHP files in the plugin's folders (such as an FTP client's temporary upload files or macOS "._" files) are no longer loaded, so they can no longer cause a fatal error
- WooCommerce: the front end's sort menu calls the price sort "Price", as the grid editor does
Essential Grid - Best Gallery WordPress Plugin v3.2.9
Version 3.2.9 (24 October 2026)
CHANGES
BUGFIX
- Security: Shortcode settings from users without the unfiltered HTML capability can no longer change a grid's source (in widgets and theme templates the author of the shown post decides), and Related Posts grids keep a bounded number of items
- Security: A grid can no longer render itself in a loop; grids nest at most three levels deep
- Lightbox and Ajax-loaded content: a grid shortcode in a post's content is judged by that post's author, so administrators' grid settings apply there as on the page
- The plugin package now includes a readme.txt with the security contact (Patchstack)
- Shortcode [ess_grid] without attributes no longer causes an error on PHP 8 with WordPress before 6.5
Essential Grid - Best Gallery WordPress Plugin v3.2.8
= Version 3.2.8 (22nd October 2026)
=Bugfixes
- Grid editor: in a Custom items grid, new and edited items are stored without empty values, so date sorting works for them, and the preview stays visible when only the newest preview request fails
- Navigation skin Grant Fuhr: the search field’s text is readable again (dark on yellow), also in existing sites’ unedited skin
- Front end: grids made from a premium template show their items on every site again, registered or not
Essential Grid - Best Gallery WordPress Plugin v3.2.7
= v3.2.7 =
Item skins: saving a skin without renaming it no longer changes its CSS class names, so its Global CSS rules keep applying, and the editor shows the class prefix the skin really has
Grid editor: in a Custom items grid, a failed preview could make the next save lose the items; the items now stay
Essential Grid - Best Gallery WordPress Plugin v3.2.6
= v3.2.6 =
CHANGES
BUGFIX
- Security: The item skin editor builds layers and layer styles from stored skin values as text and keeps only valid CSS declarations, so a stored or imported value can no longer add markup or CSS rules in the editor
- Security: Imported item skins and item elements get their handles the way the skin editor makes them, for every user
- Security: The front end builds video frames, video posters, lightbox thumbnails, the mobile filter list and the cover effect styles from item data as text, never as markup
- Security: The image options of a post are stored only as one of their choices, and the lightbox links of a skin's content images are escaped
- Security: Gallery grids show only image attachments as items, and Load More shows only images the visitor may see
- Global CSS: a page loaded at the moment of the one-time backslash conversion could show the unconverted CSS once, and a page cache could keep it
- Item skin editor: a "between" visibility rule lost its second value when the rules dialog was opened again, so after a save the layer showed on every item
- A stored name or value with a quote or a bracket stopped the item skin editor, the grid editor, a post's Essential Grid settings or Export with a script error
- Grid editor: navigation modules placed outside the grid showed the grid's navigation skin instead of their own, and a save could give the other modules the grid's skin
- Duplicating an item skin also copied the Global CSS rules of other skins whose names start the same way
- Import: the Append or Overwrite choice for an item element was ignored, or applied to another element, when the stored element had a different id
Essential Grid - Best Gallery WordPress Plugin v3.2.5
= v3.2.5 =
CHANGES
BUGFIX
- Security: The front-end grid search treats the visitor's search text as one plain search term, so it can no longer change the grid's query
- Global CSS: after the update, CSS stored with doubled backslashes (the workaround for the lost backslashes) is converted once to single backslashes, so the site looks the same
- 'essgrid_get_global_css_styles' and 'essgrid_set_global_css_styles' filters: the global CSS keeps its backslashes
- Global CSS lost its backslashes when it was saved, shown or imported, so CSS escapes such as content: "\201C", escaped selectors and icon codes did not work; they are now kept as typed
- The front-end grid search ignored the grid's Category Relation: with AND it also found posts that the grid does not show
- Grid search: a search text that starts with "array" found every item of the grid
- Grids whose Additional Parameters set a list value, such as post__in[]=12, stopped with a PHP error on PHP 8
- The Go Premium menu item opened the account login instead of the pricing page
Essential Grid - Best Gallery WordPress Plugin v3.2.4
= v3.2.4 =
CHANGES
BUGFIX
- Security: The admin escapes stored names and settings in its inline scripts, and the grid editor inserts them as text, so a stored value can no longer break the editor or be read as markup
- Security: The front-end search script escapes its settings
- 'essgrid_getPostTypesWithCatsForClient' and 'essgrid_setCategoryByPostTypes' filters: category titles are plain text ("Food & Drink", no longer "Food & Drink")
- Grid editor: switching the source from Posts to Custom Grid and back reset the first filter group's selection and dropped added filters, so the next save lost them
- Grid editor: switching the source from Custom Grid to Posts and back removed every custom item and the first filter group's filters
- Grid editor: changing the post types, or switching the source and back, reset the categories to the ones the grid was opened with; Clear now empties the categories of every post type
- Grid editor: category names with special characters such as "&" showed HTML-encoded ("&") in the categories list
- Grid editor: the preview showed its missing-categories note for grids it does not apply to, such as a Custom Grid switched to Posts
- Grid editor: Edit Source Settings and Check Settings added "#" to the page address and an extra browser history entry
- PHP "Undefined array key" warnings in the grid editor preview and on the site for grids without some settings, such as a Custom Grid switched to Posts or a filter group without its own settings
- Essential Grid's update check could stop a WP-Cron run with a PHP fatal error when another plugin reported a finished update without its update details
Essential Grid - Best Gallery WordPress Plugin v3.2.3 Nulled
= v3.2.3 -
CHANGES
BUGFIX
- Grid editor: saving a grid stores only the settings you changed; saving without a change no longer rewrites older or imported grids or changes how they look on the site
- Add 'essgrid_grid_lossless_save' filter to save the whole grid form again as before
- 'essgrid_get_wait_until_output_styles' filter: 'not-if' entries written as /.../ are regular expressions, and the box-shadow defaults use them
- Older add-on versions (Gallery 1.0.6, Related Posts 1.0.5, Social Media 1.1.0, Video Playlists 1.0.10, Team 1.0.0 and earlier) stopped the Essential Grid admin, the post editor or stream grid pages with an error and kept grids from being saved; the functions they use are available again
- The demo import of older Social Media and Video Playlists add-ons failed
- Background updates: Essential Grid's update was dropped when WP-Cron refreshed the plugin update list, so automatic updates only ran when WP-Cron ran shortly after an admin visit
- Layer conditions (Advanced Rules): a layer set to "Hide" was always hidden; it now shows when its conditions are not met, and with three rule groups the connectors between the groups decide how they combine
- Layer shadows with colors such as rgb(0,0,0) or rgba(0,0,0,0.30), or with only a horizontal offset such as 10px, were missing on the site although the skin editor showed them
- The Line and Spiral cover effects drew nothing when their color was a hex value
- The item skin editor's Play hover showed nothing
- On PHP 8, new grids started without the lightbox source, the lightbox buttons and the Ajax source
- For older grids, the grid editor showed defaults instead of the values the site uses for settings the grid does not store
- Wrong help texts for Filter Logic (AND and OR were swapped), Strip Tags, Show Description, Spinner Color and Breakpoint at Grid Width; Hide Load More Button now shows only for Infinite Scroll
- Raw code fields of a grid (custom JavaScript, Ajax callback and Ajax container code) are always stored and printed as text
- PHP warnings in the grid editor and on the Import/Export page for some older grids
- PHP "Undefined array key" warnings for item skin layers saved without a display setting, without a shadow color, or without the alignment and offsets of an absolute position
- PHP 8.1+ deprecation notice when a custom meta placeholder in a skin has no value