Overriding GravityView templates
Overriding the page template #
You can override the page template used to display GravityView Views by creating a single-gravityview.php template file. This is useful, for example, if you want GravityView Views to be displayed without sidebars or a menu bar that usually comes with the blog post template of your theme.
Here’s an easy and quick way to achieve this:
- You can use an FTP program or a File Manager plugin to access your current theme directory.
- Duplicate the
page.phpfile and rename it tosingle-gravityview.php. - That’s it! Your Views will already look better.
How to use your own template files #
- In your theme, create a
/gravityview/directory - Find the template file you want to modify. They’re located in the
[yoursite.com]/wp-content/plugins/gravityview/templates/directory. - Copy the file and its folder structure to your theme’s
/gravityview/directory. - That file will now be used instead of the GravityView file!
The same applies to DIY layouts. The difference is that the reference DIY layout file is stored on [yoursite.com]/wp-content/plugins/gravityview-diy/templates/ directory.
Template override example:
You want to modify the list-header.php file. Instead of editing the GravityView plugin, you should copy the template file to your theme, so it doesn’t get overwritten when GravityView is updated.
First, create a folder in your theme’s directory like so:
[yoursite.com]/wp-content/themes/[yourtheme]/gravityview/templates/views/list/
Then copy the file you wish to modify; in this case list-header.php
- From the GravityView directory:
[yoursite.com]/wp-content/plugins/gravityview/templates/views/list/list-header.php - To your theme’s
gravityviewdirectory:[yoursite.com]/wp-content/themes/[yourtheme]/gravityview/views/list/list-header.php*
*Notice that we are not using the /templates/ folder inside your theme.
The same goes for overriding field display
If you want to change how the Gravity Forms List field type is displayed
- Copy from the GravityView directory:
[yoursite.com]/wp-content/plugins/gravityview/templates/fields/field-list-html.php - Paste to the
/gravityview/fields/sub-directory in your theme:[yoursite.com]/wp-content/themes/[yourtheme]/gravityview/fields/field-list-html.php*
*Notice that we are not using the /templates/ folder inside your theme.
Template File Hierarchy #
GravityView has the ability to override templates based on the View ID, the connected Gravity Forms Form ID, and the ID of the page that a View is embedded on (if using the shortcode).
view-[View ID]-table-footer.phpform-[Form ID]-table-footer.phppage-[ID of post or page where view is embedded]-table-footer.phptable-footer.php
For example, if you wanted to override the layout for the single entry view using the Table layout, you would use table-single.php .
If you want to override how it looks for a View with ID 46 , you would create a file named view-46-table-single.php . The final path would be [yoursite.com]/wp-content/themes/[yourtheme]/gravityview/view-46-table-single.php .
The same applies for widgets (using widget IDs) and fields (see “overriding field display” above). Want a different layout for your List fields? view-46-single.php