This release hardens lightbox entry access, fixes opening and editing entries in a lightbox, and fixes an issue with the Bulk Edit action's field picker.
#### 🔒 Security
* Hardens access control for entries opened in a lightbox. We recommend updating to the latest version.
#### 🐛 Fixed
* Fixes an entry showing "The requested entry could not be found." when opened or edited in a lightbox (a regression introduced in 3.0.1), even though the same entry opened correctly as a full page. This affected Views set to "Embed Only" and Views using a custom entry slug.
* When using the Bulk Actions "Edit Entries" action with "Pick specific fields", a selected form field was not shown the next time the View editor settings were opened, causing the selection to be lost when the View was saved again.
#### 🔧 Updated
* [Foundation](https://www.gravitykit.com/foundation/) to version 1.24.2.
This release includes several security hardening improvements and fixes a handful of display and shortcode issues.
#### 🔒 Security
* Hardens access control and output escaping across several areas. We recommend updating to the latest version.
#### 🐛 Fixed
* The "Container Tag" setting on [DIY Layout](https://www.gravitykit.com/products/diy-layout/) was hidden in the View editor.
* Adding a single input of a Chained Selects field to a View (for example, only the "City" dropdown) displayed the entire field with every dropdown's label and value, instead of just that input's value.
* A View using the Vantage theme's table layout could extend past the screen edge on mobile devices instead of fitting within the viewport.
* The GravityView "My Forms" tab on a [LifterLMS student dashboard](https://lifterlms.com/docs/student-dashboard/) could appear in the wrong position or have a broken link, depending on which other dashboard tabs were enabled (for example, when the "My Certificates" tab was disabled).
* The GravityKit icon in the WordPress admin toolbar appeared vertically off-center (sitting too low) inside the WordPress admin, while displaying correctly on the frontend.
* The `[gv_entry_link]` shortcode could point to the wrong View when another View was embedded earlier in the same post or page.
* The `[gvlogic]` shortcode's `in` and `not_in` operators did not match values stored as comma-separated lists (such as List and Multi-Select fields) or single values, only JSON arrays.
GravityView 3.0 is the biggest release in years: **Give your Views a fresh look** with the new Vantage theme, users no longer need WordPress admin access to perform **bulk actions** on entries, a powerful new way to create Views using your AI agent, and more!
#### 🚀 Added
Vantage: a new, great-looking theme for Views.
Built-in card layout capability with the Columns control.
For existing Views, enable Vantage in your View Settings' Styles tab.
A site-wide Default theme setting (GravityKit → Settings → GravityView → Appearance) that applies Vantage to new Views by default.
v2.62.0
Verified Safe
Released 5.9 MB
This release fixes empty entry links and several Edit Entry issues, improves Entry Locking, and stops a duplicate admin notice for Views with Enhanced Security enabled.
#### ✨ Improved
* The "missing secret" admin notice for a View with Enhanced Security embedded without its `secret` attribute now appears once per page, instead of a separate notice for every entry visited.
* Entry Locking now releases the lock as soon as the editor leaves the page and stores a single transient per entry, so other users can edit sooner and the options table stays cleaner.
#### 🐛 Fixed
* The `{gv_entry_link}` merge tag and `[gv_entry_link]` shortcode produced empty links on the Single Entry page of a View with Enhanced Security enabled.
* Multiple issues with Edit Entry page behavior:
- The "Cancel" button required a second click to leave Edit Entry after taking over a locked entry;
- The "Cancel" button returned to the previous edit instead of the Single Entry after an entry had been updated;
- Pressing Enter while editing an entry with a File Upload or Post Image field cleared form fields instead of submitting the form.
#### 🔧 Updated
* [Foundation](https://www.gravitykit.com/foundation/) to version 1.22.0.
This update resolves several Post Image field issues when editing entries.
#### 🐛 Fixed
* Issues with the Post Image field's Alternative Text:
- Not shown when editing an entry;
- Discarded when saving;
- Not copied to the image in the Media Library.
#### 🔧 Updated
* [Foundation](https://www.gravitykit.com/foundation/) to version 1.21.0.
This release adapts the View editor and GravityKit admin pages to the admin color scheme changes in WordPress 7.
#### ✨ Improved
* The View editor and the GravityKit Settings, Manage Your Kit, and Background Jobs pages now follow the active WordPress admin color scheme.
#### 🔧 Updated
* [Foundation](https://www.gravitykit.com/foundation/) to version 1.20.0.
This release fixes a JavaScript error that could disable interactive features on View pages, an Unapproved entries filter that returned all results when combined with a search, a regression where single-file upload fields could fail Edit Entry validation or silently lose their existing file, and incorrectly blocked Gravity PDF updates.
#### 🐛 Fixed
A JavaScript error on View pages could disable interactive features (datepickers, the Search Bar widget, sorting, multi-page Edit Entry forms) in certain plugin or optimizer configurations.
The Unapproved entries filter on the Gravity Forms Entries list returned all entries when combined with a search query.
Single-file upload fields in Edit Entry: required fields could fail validation on submit, and optional fields could silently clear an existing file, even when no new file was uploaded.
v2.60.1
File unavailableVerified Safe
Released 5.8 MB
This release fixes a fatal error triggered by empty Search Bar submissions, incorrect Date field display with custom formats, and a stray deprecated hook notice in the admin.
#### 🐛 Fixed
* An empty search keyword submitted via the Search Bar widget could trigger a fatal error on the View page.
* Date fields could display today's date instead of the entry's actual date when a custom Date Format was used.
* A deprecated hook notice could appear in the WordPress admin when viewing entries in a lightbox.
#### 🔧 Updated
* [Foundation](https://www.gravitykit.com/foundation/) to version 1.18.0.
This release speeds up the Views list page on form-heavy sites and fixes File Upload fields rendering blank in Views.
#### ✨ Improved
* Faster loading of the Views list page on sites with a large number of forms.
#### 🐛 Fixed
* File Upload fields rendered blank in Views on Gravity Forms 2.10.0 and later
#### 💻 Developer Updates
* Restored `$context` argument passed to `gravityview/field_output/*` filters in the legacy table and list templates.
#### 🔧 Updated
* [Foundation](https://www.gravitykit.com/foundation/) to version 1.17.0.
This release adds a setting to modify the Edit Entry page title, adds support for the Gravity Flow Assignee field in the Search Bar widget, and resolves a fatal error on PHP 8+.
#### 🚀 Added
View setting to customize the title shown on the Edit Entry screen.
Search Bar widget now renders the Gravity Flow Assignee field as a dropdown of users and roles.
#### 🐛 Fixed
Fatal error that could occur on PHP 8+ when an unexpected URL value was passed to a date-range or number-range field in the Search Bar widget.
v2.58.0
File unavailableVerified Safe
Released 5.8 MB
This update includes internal code improvements.
#### 🔧 Updated
* [Foundation](https://www.gravitykit.com/foundation/) to version 1.16.0.
This release adds a View setting to extend searches beyond configured date ranges and a live-updating Search Bar configuration summary, and resolves compatibility issues with Gravity Forms 2.9.31.3+.
#### 🚀 Added
View setting to allow searching beyond the configured start and end date range.
Live-updating Search Bar configuration summary in the View editor that shows field count and search mode without opening the settings dialog.
#### 🐛 Fixed
`?filter_<ID>=value` request arguments could bypass the "Search in visible fields only" setting.
v2.56.1
File unavailableVerified Safe
Released 5.8 MB
This release resolves an issue where the "Search in visible fields only" setting could interfere with unrelated query conditions, and a separate issue where `[gv_entry_link]` URLs were missing pre-populated field values.
#### 🐛 Fixed
* "Search in visible fields only" setting was incorrectly removing non-search conditions (such as approval status) from queries, allowing unapproved entries to appear and breaking Single Entry access.
* The `field_values` attribute in the `[gv_entry_link]` shortcode was not being appended to URLs when using read or delete link types.
#### 🔧 Updated
* [Foundation](https://www.gravitykit.com/foundation/) to version 1.14.0.
This release adds a safeguard against unfiltered entry display when Advanced Filtering is inactive, and fixes issues with the Connected Views dropdown and search queries containing typographic quotes.
#### 🚀 Added
* A safeguard that prevents unfiltered entries from being displayed when a View has Advanced Filtering conditional logic configured but the extension is not active.
#### 🐛 Fixed
* The "Connected Views" dropdown on Gravity Forms pages did not appear for users with multiple WordPress roles.
* Search not returning results when queries contain typographic ("smart") quotes, commonly entered from mobile keyboards.
This release adds an Entries column to the Views list and fixes issues with `[gvlogic]`, global search, and empty search filters.
#### 🚀 Added
An `Entries` column on the admin Views list that displays the number of entries for each View’s Data Source.
#### 🐛 Fixed
`[gvlogic]` conditions silently failed when field values contained HTML special characters like `&`, `>`, or `<`.
Inclusive (+) and exclusive (-) global search words are now correctly handled on fields from joined Multiple Forms.
v2.54.2
File unavailableVerified Safe
Released 5.2 MB
This update fixes search issues affecting Multi Select fields and URL parameter filtering.
#### 🐛 Fixed
* Search not returning results for Multi Select fields.
* URL search parameters not filtering results when the Search Bar is configured with only the "Search Everything" field.
This release resolves third-party plugin compatibility issues, Gravity Forms field rendering in Single Entry, and Custom Content field label handling in the View editor.
#### 🐛 Fixed
* The Gravity Forms field did not render correctly in Single Entry, causing broken CSS styling, form feeds, and third-party integration issues.
* Sorting a View by column broke page styles when PDF for GravityView download links were present.
* Admin Labels set on Custom Content fields were replaced by Custom Labels after saving the View.
* Fatal error caused by a third-party plugin conflict that prevented GravityView from loading.
#### 🔧 Updated
* [Foundation](https://www.gravitykit.com/foundation/) to version 1.11.0.
This update gives you more styling control over rows in the Layout Builder template and addresses issues affecting Edit Entry, Gravity PDF, and View widgets.
#### 🚀 Added
Ability to configure custom CSS classes and HTML IDs for Layout Builder row wrapper elements in the View editor.
#### 🐛 Fixed
Fatal errors in various scenarios:
On PHP 8+ when editing an entry with the Created By field in the edit layout and the form's honeypot enabled;
On the Edit Entry page with multi-column List fields caused by certain plugins;
When Gravity PDF generates a PDF for forms with Quiz fields.
v2.53
File unavailableVerified Safe
Released 5.2 MB
Other
This release introduces the ability to filter Entry Notes by type, resolves multiple Edit Entry issues including hidden fields, List fields, and multi-page navigation, and fixes File Upload secure links forcing downloads instead of opening in the browser.
#### 🚀 Added
Entry Notes field setting to filter displayed note types, such as hiding notification confirmations while showing only user notes.
#### 🐛 Fixed
Hidden fields not appearing on the Edit Entry page when the `gravityview/edit_entry/reveal_hidden_field` filter returns `true`.
Multi-column List fields with data on the Edit Entry page no longer display serialized array data when revealed via conditional logic.
v2.52
File unavailableVerified Safe
Released 5.2 MB
This release improves File Upload field secure download links, fixes a compatibility issue with the Gravity Forms Populate Anything plugin, and resolves issues with the Gravity Forms field and View filtering.
#### ✨ Improved
* File Upload fields now generate cleaner, more flexible secure download links.
#### 🐛 Fixed
* Inconsistent behavior between View filtering using URL parameters and Search Widget configuration.
* Choice fields (e.g., Select, Radio) populated by the Gravity Forms Populate Anything plugin now display labels instead of raw values when "Show Label" is enabled.
* Gravity Forms field issues:
- Embedded forms with conditional logic were not rendered.
- Successful form resubmission after initial validation failure would fail with "Another submission is already in progress" error.
#### 🔧 Updated
* [Foundation](https://www.gravitykit.com/foundation/) to version 1.8.0.
This release adds support for Gravity Forms Repeater fields and resolves issues with field visibility, embedded Views, and Image Choices field display.
#### 🚀 Added
* Support for Gravity Forms Repeater fields, including nested data display in Table and List Views, Search Bar integration, and configurable display limits.
#### 🐛 Fixed
* Field visibility settings were not being respected by the Layout Builder template.
* Embedded Views (via the `[gravityview]` shortcode or GravityView View field) were not rendering correctly when displayed within a Single Entry layout on pages with multiple Views.
* Image Choices field displayed the same image for all choices when each choice was added as a separate field in a View.
#### 🔧 Updated
* [Foundation](https://www.gravitykit.com/foundation/) to version 1.7.2.
This release fixes Search Bar settings modal display issues and a conflict with plugins using Laravel components, and adds new filters for entry deletion and edit locking control.
#### 🐛 Fixed
Search Bar Settings modal Close button not visible and dialog appearing behind the admin bar on smaller viewports.
Conflict with plugins that use Laravel/Illuminate components.
#### 💻 Developer Updates
Added
`gk/gravityview/delete-entry/can-delete` filter to control whether a user can delete an entry.
`gk/gravityview/edit-entry/lock-dialog/show-request-control` filter to control visibility of the Request Control button in the entry lock dialog.
Frontend bulk actions on table-layout Views, applied to selected entries:
Bulk Edit of field values, including complex field types (dropdown, radio, checkbox, multiselect, Name inputs, and Address text inputs);
Resend Notifications to (re)send Gravity Forms notifications;
Download Attachments to package file-upload attachments into a single ZIP download;
Optional background processing on each action, for large entry sets.
Create and configure Views using the [GravityKit MCP](https://www.gravitykit.com/mcp/):
Control everything about your View using your AI assistant;
Also create and edit your Gravity Forms forms;
Powered by the WordPress Abilities API, available in WordPress 6.9 and newer.
Search Bar improvements:
Date range presets in the Search Bar, including This Week, This Year, Last Year, and the last four completed quarters.
"Date range layout" setting: two separate date pickers, or a new combined date range picker.
Minimum and maximum date settings on date fields limit the dates a visitor can select in the picker. Supports absolute dates (e.g. 2026-01-31) and relative dates (e.g. "-1 year", "now").
Revision history for Views, with one-click restore from the Revisions box in the Edit View screen.
#### ✨ Improved
Switching View types (for example, from Table to Layout Builder) now maintains your configured fields instead of resetting the configuration.
When creating a new View, the editor has form fields pre-filled for all layout types (previously only for Table and DataTables layout types).
Multiple Views on the same page can now be paginated independently of one another.
Loading the block editor is now significantly faster on sites with many Views.
#### 💻 Developer Updates
Check out the new [GravityKit Developer MCP](https://mcp.gravitykit.dev) - develop faster by enabling your AI to quickly find what it needs!
[Read what you need to know about the GravityView 3.0 migration.](https://www.gravitykit.dev/migrating-to-3-0-dev-guide/)
Removed
Delete, Approve, Disapprove, Export;
Added
a Display Mode setting to the Page Links widget to improve View navigation, with three options: Numbers with arrows (default, unchanged), Numbers with Previous/Next labels, or Previous/Next only.
a **[GravityView Theme CSS Token System](https://www.gravitykit.dev/gravityview/css-tokens/)** for easily styling every aspect of a View.
formal `Contracts` interfaces for core components, including Views, Entries, Fields, Forms, and Widgets.
a set of `gk-gravityview/*` abilities registered with the WordPress Abilities API that make View authoring — creating Views and configuring their fields, widgets, search, and layouts — available over REST and to AI agents through MCP. Add-ons can register their own abilities and hook into the View lifecycle to extend what's automatable (for example, `gk/gravityview/rest/view/cloned` and `gk/gravityview/rest/view-config/apply/after`).
the [`gk/gravityview/bulk-actions/*` filter and action namespace](https://www.gravitykit.dev/search/?q=gk%2Fgravityview%2Fbulk-actions%2F) for the new frontend bulk actions. Register or modify the available actions with [`gk/gravityview/bulk-actions/actions`](https://www.gravitykit.dev/docs/gravityview/filters/gk-gravityview-bulk-actions-actions/), gate them with [`gk/gravityview/bulk-actions/action-is-available`](https://www.gravitykit.dev/docs/gravityview/filters/gk-gravityview-bulk-actions-action-is-available/), and configure per-action settings and field requirements with [`gk/gravityview/bulk-actions/action-config`](https://www.gravitykit.dev/docs/gravityview/filters/gk-gravityview-bulk-actions-action-config/), [`gk/gravityview/bulk-actions/action-settings`](https://www.gravitykit.dev/docs/gravityview/filters/gk-gravityview-bulk-actions-action-settings/), and [`gk/gravityview/bulk-actions/action-field-requirements`](https://www.gravitykit.dev/docs/gravityview/filters/gk-gravityview-bulk-actions-action-field-requirements/).
background-processing controls for bulk actions with [many new hooks](https://www.gravitykit.dev/search/?q=gk%2Fgravityview%2Fbulk-actions%2Fbackground)
[`gk/gravityview/admi
Improved
the codebase to use a PSR-4 autoloaded `GravityKit\GravityView\*` namespace, with core classes moved from `includes/` and `future/` into a unified `src/` directory. Lazy-loaded class aliases keep legacy `\GV\*` and `GravityView_*` class names working.
Updates to Gravity PDF were incorrectly blocked because it was misidentified as a GravityKit product.
#### 💻 Developer Updates
#### 🔧 Updated
[Foundation](https://www.gravitykit.com/foundation/) to version 1.19.0.
Added
`gravityview/approve-entries/refresh` JavaScript event on `document`. Trigger it after the Gravity Forms Entries list table is re-rendered (e.g., AJAX updates) to re-inject the approval column and re-bind the approval controls.
[Foundation](https://www.gravitykit.com/foundation/) to version 1.16.1.
Added
`gk/gravityview/edit-entry/title` filter to modify the title shown on the Edit Entry screen.
`gk/gravityview/edit-entry/document-title` filter to override the browser tab title on Edit Entry independently of the page heading.
`gk/gravityview/search/field/choices` filter to supply Search Bar choices for Gravity Forms-backed fields that don't populate `$field->choices` natively (e.g., the Gravity Flow Assignee field).
Removed
the `gravityview_edit_entry_title` filter in favor of `gk/gravityview/edit-entry/title`.
Edit Entry Next/Previous buttons not navigating to the correct page on multi-page forms.
The "Unapproved" entries filter preventing other plugins from modifying the entry query.
Layout Builder template now has distinct CSS classes for Single Entry (`gv-layout-builder-single-container`) and Multiple Entries (`gv-layout-builder-multiple-container`) views, matching the pattern used by Table and List templates.
File Upload field secure download links now open files (PDFs, images, etc.) in the browser instead of forcing a download.
#### 💻 Developer Updates
#### 🔧 Updated
[Foundation](https://www.gravitykit.com/foundation/) to version 1.9.0.
Added
`gk/gravityview/field/notes/type-labels` filter to modify the labels displayed for note types in the Entry Notes field settings.
`gk/gravityview/field/notes/default-types` filter to modify the default note types available in the Entry Notes field settings.