GravityView is a powerful WordPress plugin that extends Gravity Forms by allowing users to display, search, edit, and manage form entries directly on the front end of a website. It transforms Gravity Forms submissions into dynamic directories, member listings, business catalogs, job boards, event calendars, tables, maps, and custom data-driven applications without requiring coding knowledge.
Built for businesses, communities, educational institutions, nonprofits, and developers, GravityView provides flexible layout builders, advanced filtering options, front-end editing capabilities, and seamless integration with Gravity Forms. Whether you’re creating a staff directory, property listing website, customer portal, or searchable database, GravityView offers an intuitive solution for presenting and managing user-submitted data professionally.
Features
- Gravity Forms Integration
Works seamlessly with Gravity Forms to display form entries. - Front-End Entry Display
Show submitted form data anywhere on your website. - Drag-and-Drop View Builder
Create custom layouts visually without coding. - Multiple View Types
Display entries as tables, lists, directories, or custom layouts. - Table Layout Support
Present entries in sortable and organized tables. - List Layouts
Show content in clean and responsive lists. - Directory Builder
Create member, staff, or business directories. - Single Entry Pages
Allow visitors to view complete entry details. - Front-End Entry Editing
Enable users to edit their submissions directly from the front end. - Entry Approval System
Review and approve submissions before publishing. - Advanced Search Bar
Provide visitors with powerful search functionality. - Filtering Options
Filter entries by categories, dates, and custom fields. - Sorting Controls
Sort entries alphabetically, by date, or custom values. - Pagination Support
Display large datasets with easy navigation. - Custom Field Display
Show specific Gravity Forms fields anywhere within layouts. - Conditional Logic Support
Display content dynamically based on form values. - Featured Entries
Highlight important listings or submissions. - User Profile Directories
Create searchable user and membership directories. - Business Listings
Build local business and company directories. - Job Board Creation
Display job submissions from Gravity Forms. - Event Directory Support
Create event listings and schedules. - Real Estate Listings
Showcase property submissions professionally. - Staff Directory Management
Publish employee profiles and contact information. - Customer Portals
Allow users to manage their own submitted data. - Front-End Submission Management
Users can view, edit, and maintain their entries. - Search Engine Friendly URLs
Generate clean URLs for entry pages. - Responsive Design
Layouts adapt perfectly to desktops, tablets, and smartphones. - Custom CSS Styling
Apply personalized designs to views and listings. - Widget Support
Display GravityView content in sidebars and widget areas. - Shortcode Integration
Embed views easily using shortcodes. - Google Maps Integration
Display entries on interactive maps. - DataTables Support
Enhance tables with advanced sorting and searching capabilities. - CSV Export Compatibility
Export displayed entries for external use. - Entry Ownership Controls
Restrict editing permissions to entry owners. - Role-Based Access Permissions
Control visibility based on user roles. - Developer-Friendly Hooks
Extend functionality using filters and actions. - WooCommerce Compatibility
Integrates smoothly with WooCommerce-powered websites. - Multilingual Support
Compatible with translation and multilingual plugins. - SEO Optimized Structure
Improve visibility for directory and listing pages. - Performance Optimized
Designed to efficiently handle large numbers of entries. - No Coding Required
Build data-driven websites through visual tools. - Regular Updates & Improvements
Receive ongoing enhancements, bug fixes, and compatibility updates. - Detailed Documentation
Access tutorials, guides, and setup resources. - Professional Support
Benefit from dedicated assistance and technical help.
Download GravityView WordPress Plugin
GravityView is an excellent solution for WordPress users who want to transform Gravity Forms submissions into searchable directories, listings, portals, and custom databases. With front-end editing, advanced filtering, and flexible display options, it provides everything needed to build dynamic, user-driven websites without custom development.
To Get Started
- Log in to your WordPress dashboard.
- Navigate to Plugins → Add New → Upload Plugin.
- Upload the GravityView ZIP file.
- Click Install Now and then Activate.
- Ensure Gravity Forms is installed and activated.
- Create or select a Gravity Form.
- Build a View using the GravityView editor.
- Customize layouts, search tools, and permissions.
- Publish your View and display form entries on the front end.
Build powerful directories, listings, and data-driven websites with GravityView — the complete front-end display solution for Gravity Forms.
Changelog: See What’s Fixed & Added
= v3.1.0 on July 16, 2026 =
This release adds a Table layout row-header setting for better screen reader support and a View editor warning when the Edit Entries bulk action can’t run on the frontend, restores the LifterLMS integration, scopes a front-end search to the View it was performed on, includes security hardening for embedded Views, and fixes an issue that could prevent activation on some configurations, along with several lightbox, access, accessibility, and Vantage-style layout issues.
####
Added
* Table layout: a new “Use this field as a row header” field setting renders that column’s cells as `<th scope=”row”>` instead of `<td>`, so screen readers announce the identifying cell (like a name or title) as context for the other cells in the row.
####
Improved
* Hardened the “Enhanced Security” embed secret. Existing embeds keep working; if one ever stops rendering, re-copy its embed code from the View editor. Developers can require the new secret on specific Views (see Developer Updates).
* The View editor now warns when the Edit Entries bulk action can’t run on the frontend because the View’s form uses conditional logic, instead of allowing the action to be configured and silently do nothing.
* Phone field compatibility with Gravity Forms 3.0+.
####
Fixed
* An entry opened in a lightbox showed “The requested entry could not be found.” when the View’s filtering depended on a value from the page request (e.g., [Advanced Filtering](https://www.gravitykit.com/products/advanced-filter/) configured to read a URL parameter).
* An entry opened in a lightbox could show a raw error (`{“code”:”rest_cookie_invalid_nonce”,…}`) instead of the entry when the visitor had logged out or their session expired (for example, a tab left open past the daily security-token refresh). The lightbox now falls back to the normal access-controlled response: a public entry displays, and a restricted one shows the friendly “could not be found” message.
* The confirmation message did not display after duplicating or deleting an entry from the front end.
* On the List layout, placing heading markup (such as an `<h1>` in a Custom Content field) in the Listing Title or Subtitle zones left an empty heading in the page that accessibility checkers like WAVE flagged as an “Empty heading” error. The layout’s heading wrapper now becomes a `<div>` when the field’s content is itself a heading, and is omitted entirely when there is nothing to display.
* Entries appeared in the Multiple Entries layout but showed “You are not allowed to view this content.” when opened or edited, even by administrators. This affected entries whose status was saved with different capitalization (e.g., `Active` instead of `active`), which can happen when entries are imported.
* A Search Bar Date Range field overflowed its column in both “Separate Fields” and “Combined” modes, running off-screen or overlapping the adjacent field; the pickers now shrink to the available width and stack when the column is narrow.
* The Search Bar’s Search button rendered at the horizontal center of the form instead of below the search fields, and on browsers without `:has()` support it aligned with a neighboring field’s label instead of its input.
* The Search Bar’s Clear/Reset button was missing on pages without an active search, so changing inputs no longer revealed the Reset button; it is now always part of the form again and appears when there is something to reset or clear.
* Removing the last widget from a widget-area row and updating the View removed the row itself from the editor with no way to add it back; the default full-width and half-width rows now always stay available as drop targets.
* Activating GravityView could prevent a site from loading when its theme or another plugin already included the same email-obfuscation library.
* A deprecation warning (“The gravityview_template_…_options hook is deprecated”) was logged blaming an add-on such as [Gravity Flow](https://gravityflow.io/) when the add-on registered a custom field or widget type, even though GravityView itself attaches that hook on the add-on’s behalf.
* The GravityView integration was missing from the [LifterLMS](https://lifterlms.com/) Settings → Integrations screen (and the “My Forms” student dashboard tab with it) since the 3.0 update.
* The `[gv_entry_link]` shortcode with `lightbox=”true”` opened a full page instead of the lightbox when the View’s entries were loaded over AJAX, such as on the [DataTables](https://www.gravitykit.com/products/datatables/) layout.
* A [DataTables](https://www.gravitykit.com/products/datatables/) View using the Vantage theme rendered a narrow table pushed to one side of the View, with empty space beside it, when FixedHeader or FixedColumns was enabled.
* A “translation loading triggered too early” (`_load_textdomain_just_in_time`) notice appeared on WordPress 6.7 and newer because some widgets and field types loaded translations too early.
* Single entry pages could fail to load when custom entry slugs were enabled and an entry link was built for an entry that could not be resolved, such as by the [WPML](https://wpml.org/) language switcher rebuilding entry links in the page header.
* A Time field’s “Override Date Format” box showed the default format (e.g. `h:i A`) even when left empty and could not be cleared, and saving the View baked that format in. The default is now shown as a placeholder hint, so the box stays empty and the field keeps following the form’s time format.
* Duplicating an entry failed when the request had no user agent, such as from WP-CLI or other server-side requests.
* Suppressing an internal deprecated-hook notice could remove an identical suppression filter registered by other code on `deprecated_hook_trigger_error`, causing deprecation notices that the other code had silenced to print.
* When multiple Views were embedded on the same page and one had a search bar, performing a search also filtered the other Views, so a View set to hide when it has no entries showed “This search returned no results.” instead. A search now applies only to the View it was performed on.
####
Developer Updates
* Entry approval checks now accept the lowercase `approved` value in the `is_approved` entry meta, matching the already-accepted `Approved` and `1` values.
* Edit Entry now uses `GFAPI::get_entry()` and `GF_Field::get_value_save_input()` instead of `GFFormsModel::get_lead()` and `GFFormsModel:repare_value()`, deprecated in Gravity Forms 3.0.
* GravityView no longer listens to its own deprecated hooks, clearing deprecated-hook entries from debugging tools like Query Monitor. The deprecated hooks still fire for third-party code.
* Added `gk/gravityview/template/options/pre-context` filter to modify typed field options before they are filtered by context.
* Added `gk/gravityview/deprecated-hook-notices/product-dirs` filter to register additional directories as GravityKit products for deprecated-hook classification, and the internal product list now refreshes until Foundation has fully initialized.
* Added `gk/gravityview/field-output/fix-heading-wrapper` filter to disable the automatic demotion and suppression of heading wrappers in field output.
* Added the `gk/gravityview/search/scope-to-view` filter (default `true`) to control whether a front-end search is scoped to the View it was performed on. Return `false` to restore the legacy behavior where one search bar filters every View on the page.
* Added the `gk/gravityview/view/secret/allow-legacy` filter to control whether a View accepts the embed secret it used before this release. Existing embeds keep working by default; return `false` to require the current site-specific secret.
####
Updated
* [Foundation](https://www.gravitykit.com/foundation/) to version 1.25.0.














