728x90

Unless otherwise noted, any code snippet in this post goes in your theme's functions.php file or a plugin for your custom functions.

Need a dynamic form? Here are three useful methods to pre-populate form fields using the Gravity Forms WordPress plugin.
Sometimes being lazy is a good thing, like creating one form to do three things instead of having three forms to keep track of. What if the form needs to load a different field dependent on which page the user is clicking from? Or dependent on the current page where the form is embedded? In this example, we will pre-populate a form field to conditionally display sections for Billing, Sales, and Support. Thankfully, the folks over at Gravityforms have made this a painless endeavor.

Cue each Section with a Dropdown Field

First, to cue the display of each conditional area, the for, needs an element with multiple options to select from; in this case a dropdown field will be used.

Add a dropdown to the form and in order to keep it unseen by users on the front end, set ‘Visibility’ to Hidden. Next, add Choices for each of the three sections, taking not of the value for each choice. Tick show values if a custom value is preferred. The value will be passed to the front end field and is what we will use to specify which conditional section to display.

Add Section Field with Conditional Logic

Next, go ahead and create a ‘section’ field for each conditional area: Billing, Sales, and Support. Be sure to check off the Allow field to be populated dynamically box, located in the advanced tab. Directly below, set the Parameter Name that will be used to call the corresponding field value. In this example we will use query_type.

Now, enable conditional logic so each section displays only when the corresponding dropdown choice is selected. Head to the advanced tab for each Section, check Enable Conditional Logic, and configure accordingly to display when the correct dropdown choice is selected.

Apply Parameter Values

The groundwork has been laid, and it is time to put this form to work. Here are three different ways to pre-populate, with a use case for each method.

Pre-Populate by Query String

After appending a query string to the page URL, we can cue the query_type parameter to deliver a default field value for the dropdown on our destination page. Going along with our example, let’s say we want to load the sales section any time the user is clicking from the Services page. On the Services page, we must build each destination link to call the ‘sales’ value for the previously set custom parameter:

http://example.com/contact-us/?query_type=sales

Pre-Populate by Shortcode

So what if we want to set the form to display the Billing section by default on our Billing page? One option is to include the standard Gravity Forms shortcode on the billing page, adding field_values and setting query_type equal to the designated dropdown value:
[gravityforms id=1 field_values='query_type= billing']

Pre-Populate by Hook

Time to hook it up. Here is the most recommended, versatile way to pre-populate Gravity Form fields, extending control of how and where field values will be pre-set. In this example, a conditional hook can be used in functions.php to look for the custom parameter and fills it with the desired value.

What if the form needs to display the Support section when it is located on the Support page? First, add a filter that includes the previously set query_type custom parameter: gform_field_value_query_type. This enables a custom_function to conditionally return the value support only if the page is titled Support:
add_filter( 'gform_field_value_query_type', 'custom_function' );
function custom_function( $value ) {
if( is_page('Support') ) {
return 'support';
}
}

Time to Get Nifty

There are tons of ways to extend Gravity Forms and create dynamic WordPress forms, making the plugin’s versatility a must-have. For a full scoop on using gform_field_value_$parameter_name Gravity Forms has put together a helpful guide.

728x90

So you're looking to embed Gravity Forms on your WordPress website, but don't quite understand how. You know you need a shortcode, but what is that, where do you find it, and what do you do with it?

Here, we'll explain what a shortcode is, how to find and use the Gravity Forms shortcode, and how to avoid needing a shortcode entirely.

How to Embed Using the Gravity Forms Shortcode

The quickest way to embed forms is using the Gravity Forms shortcode. A shortcode is a bit of code, in square brackets, used by WordPress plugins to insert things in posts or pages.

Until recently, shortcodes were pasted on their own line in the classic editor. It was kind of confusing, but it worked. In WordPress 5 and later, the Gutenberg editor offers dedicated shortcode blocks.

To get started, open the page you want to add the Gravity Forms shortcode to, then click the + icon to insert a new block.

Search for and select Shortcode.

Now you can paste or type out your Gravity Forms shortcode. Here it is:

[gravityform id="1"]

Use that right now and the Gravity Form with the ID number 1 will show up on that post or page. Change the number to change the form used on the page. You can find the ID numbers for your forms in the Gravity Forms page of your WordPress backend.

There are a few options you can add to the shortcode in order to customize how it looks on your page.

  • Add title="false" and your form's title will no longer show up in the post or page.

  • Add description="false" and your form's description will no longer show up in the post or page.

You can put these options after the ID number but inside the square brackets to disable both the title and the description. Like this:

[gravityform id="1" title="false" description="false"]

There are a few other, more complex options, which you can read about here.

How to Embed Gravity Forms Without a Shortcode

If keeping track of shortcodes doesn't seem fun to you, don't worry: You can use a dedicated Gravity Form block instead, which also lets you preview your forms in the WordPress editor. The only downside is you'll have to download and install the Gravity Forms Gutenberg Add-On. You'll find it on the Gravity Forms download page.

Once the plugin is installed, you can quickly add a Gravity Forms block to any WordPress post or page.

You can choose which form to embed using a dropdown menu, meaning there's no form ID to look up.

And the form will show up in the editor itself, allowing you to see it in context without having to open a preview page.

It's easier to keep track of than Gravity Forms shortcodes, so download the plugin if you're tired of doing things manually.

Connect Gravity Forms to Thousands of Other Apps

You're setting up Gravity Forms to gather information from people who visit your website, but what are you going to do with that information? With Zapier, you can send form entries to thousands of other apps, automatically, saving you from having to copy that information yourself.

728x90

[gravitypdf] Shortcode

You can easily add a PDF download link to Gravity Forms Confirmation and Notifications with the [gravitypdf] shortcode. Using the optional Entry Attribute you can also include it on any other WordPress page. If you only need the PDF URL, you can use the PDF Mergetags that have been added in Gravity PDF 4.1.

Jump To Section

Security

There are a number of security protocols in place to prevent unauthorised access to PDF documents. Before using this shortcode it's highly recommended you review the documentation detailing PDF security.

Using the Shortcode

We wanted to make it as simple as possible to use the [gravitypdf] shortcode in your form's confirmations and notifications. With that in mind, we added a Download PDF column to the PDF form list, which has a sample shortcode for each PDF you have set up. Just copy and paste the shortcode sample to your confirmation or notification and click save1. The default behaviour is to generate a download link to the PDF with the text Download PDF. Simple!

Confirmation Types

Gravity Form Confirmations is what gets shown to the user after they complete a form. They come in three flavours:

  1. Text Confirmations
  2. Page Confirmations
  3. Redirect Confirmations

We've ensured the [gravitypdf] shortcode works with as little configuration as possible across all confirmation types.

Text

The text confirmation is the simplest Gravity Forms confirmation type. When selected, you can enter a message using the WordPress editor.

To get it functioning you just need to copy and paste the sample shortcode found on the PDF form list.

Page

The page confirmation allows you to redirect users to an existing WordPress page. This method is not quite "copy and paste", but it's close.

To get it functioning you need to copy the sample shortcode found on the PDF form list and place it on the WordPress page you're sending your user to. Once done, go back to your confirmation configuration and enable the Pass Field Data Via Query String option. Add entry={entry_id} to the field that appears and click save.

Redirect

The redirect confirmation allows you to send the user to another location upon completing their form. If you choose, you can redirect the user to a PDF.

To get it functioning you just need to copy and paste the sample shortcode found on the PDF form list. When you save the confirmation the shortcode will automatically be converted to a direct PDF link.

Usage in Notifications

Gravity Form Notifications are automated emails sent after the form is submitted. If you would prefer not sending the PDF as an email attachment (usually for security reasons) you can use the [gravitypdf] shortcode and create a direct link to the PDF.

Because of the security protocols, this method is very effective when the recipient has a WordPress user account. We don't recommend using it if your forms will be completed by logged out users – add a shortcode to the confirmation page instead.

Building the Shortcode

While we provide a quick and easy way to get a particular PDF's [gravitypdf] shortcode, it's also useful to know what each attribute does, and how it affects the display of the PDF download link that gets generated.

Attributes

The [gravitypdf] shortcode is customisable and there are a number of attributes which can be used to change the default behaviour.

ID (required) : The ID attribute is required and refers to the ID assigned to a particular form's PDF. The easiest way to get the ID is to use the sample shortcode on the PDF form list, as it includes the PDF ID already. However you can find a PDF's ID in the URL when updating the PDF settings. This is denoted by the pid parameter.

*/wp-admin/admin.php?page=gf_edit_forms&view=settings&subview=pdf&id=2&pid=**560f2ef799945***

: Example: [gravitypdf id="560f2ef799945"]

Name (optional) : This attribute doesn't effect the shortcode in any way, but does allow you to quickly determine which PDF it references.

Text (optional) : This attribute allows you to change the generated link's text which the end-user will see. : If the text attribute isn't present it will default to Download PDF. : Example: [gravitypdf id="560f2ef799945" text="View PDF"]

Type (optional) : The type attribute has two valid parameters: download and view. When the download option is set, and a user clicks the PDF link, a save dialog box will open – allowing a user to download and then view the PDF locally. When the view option is set the PDF will be rendered in their web browser. : If the type attribute isn't present it will default to download. : Example: [gravitypdf id="560f2ef799945" type="view"] or [gravitypdf id="560f2ef799945" type="view" text="View PDF"]

Class (optional) : The class attribute allows you to set a specific class on the generated PDF anchor tag (<a></a>). This is useful when you want to style the link a certain way. : If the class attribute isn't present it will default to gravitypdf-download-link. : Example: [gravitypdf id="560f2ef799945" class="my-custom-button-class"] or [gravitypdf id="560f2ef799945" class="my-custom-button-class a-second-class"]

Print (optional) : The print attribute will automatically open a print dialog box when the PDF is viewed. : Example: [gravitypdf id="560f2ef799945" print="true"]

Entry (semi-optional) : When the shortcode is used in Gravity Form confirmations or notifications this attribute can be omitted (as we already know which entry is being processed). However, if you want to use the shortcode outside of that environment you need to pass in the Gravity Form entry ID. : Alternatively, instead of passing the entry ID directly to the shortcode you can set the ID via URL parameters (the "query string"). If the entry or lid URL parameters exist its value will be used as the ID (see Page Confirmation for more details). : Example: [gravitypdf id="560f2ef799945" entry="250"] or [gravitypdf id="560f2ef799945"] with a URL like http://test.com/?entry=250

Common Problem

If the [gravitypdf] shortcode doesn't display a link to the PDF an error likely occurred. To verify this, enable Shortcode Debugging in the Global PDF Settings and test again using an Administrator WordPress account.

Using the Mergetag

Gravity PDF Mergetags are only available in Gravity PDF 4.1 or higher

If you don't need a HTML download link to the PDF, but do want to access the PDF URL you can use the new PDF Mergetags. These are included automatically in the Gravity Forms Merge Tag selector and can be used anywhere merge tags are supported.


  1. The Page confirmation method requires a little extra configuration than text and redirect confirmations.

Edit this page

Last updated on 2020. 11. 22.

Previous

« Viewing Configured PDFs in your Admin Area – Gravity PDF

Next

Managing PDFs – Add, Edit, Deactivate, Duplicate and Delete »

 

728x90

With the Bulk Actions add on for Gravity Forms, you can now make a selection of form fields and copy them to any of you other forms on your WordPress website. Simply make a selection of fields and press the ‘Copy to form‘ button at the top of the page.

You’ll be prompted to selected the destination form you’d like to copy the selected fields to. Make your selection and you’re done!

 

+ Recent posts