Gravity Wiz

Magically enhanced tutorials, snippets and plugins for Gravity Forms!

  • Gravity Perks
    • Gravity Perks
    • Tutorials & Snippets
    • About
  • Support
    • Documentation
    • Support
    • Account

Gravity Forms Nested Forms

A Gravity Forms Repeater Addon for simple or more complex forms. Create forms within forms for better management of complex data collection. Formception!

This plugin is part of Gravity Perks, a suite of 41+ essential Gravity Forms addons with support you can count on.

  • View All Perks
  • Buy Gravity Perks

What does Gravity Forms Nested Forms (Gravity Forms Repeater) do?

This plugin adds a new Nested Form field type. This field allows you to select another form that will be used to collect “child” entries and attach them to the “parent” entry on submission. The child entries display in a clean, compact table on the parent form where they can be viewed, edited or deleted.

Can this be used as a Gravity Forms Repeater?

Yes, it sure can work as a Gravity Forms repeater add-on! While Nested Forms can perform much more complex functionality, it can be used as a simple Gravity Forms Repeater field, as well. A repeater allows you to dynamically add additional fields to a WordPress Gravity Form. GF Nested Forms differs only in that it allows you to submit the group of repeating fields (i.e. repeater fields) via a modal.

Features

  • Simplify complex forms & collect repeatable data.
    Create forms that are easier for you to manage and easier for your users to complete.
  • Register groups and individuals on the same form.
    Register a team and players or a company and employees or a make and models all on the same form.
  • Use sum, total and count in calculations.
    Pull data from your nested forms into your parent form for powerful, dynamic calculations.
  • Control the look & feel.
    Helpful UI, flexible templating, and handy hooks.
  • Process feeds for child entries.
    On child form submission – or – only when the parent form is submitted; allows you to do things like register a user for each child entry. Insane!
  • Powerful developer options.
    Well-documented hooks and a flexible templating system make extending this WordPress plugin a breeze.
  • Easy & accessible.
    Nested Form fields are fully navigable by keyboard and work well with screen readers.
  • Automatic updates.
    Get updates and the latest features right in your dashboard.
  • Awesome support.
    We’re here to help! And we mean it.

Documentation

  1. How do I enable this functionality?
  2. Feature Details
    1. Nested Form Field
      1. General Settings
        1. Nested Form
        2. Summary Fields
        3. Entry Labels
    2. Appearance Settings
      1. Modal Header Color
    3. Advanced Settings
      1. Entry Limits
      2. On the Frontend
      3. On the Backend
    4. Child Entries
    5. The {Parent} Merge Tag
      1. Populate Child Form Fields with Parent Form Data
      2. Display Parent Data in Child Form Notifications
    6. Feed Processing
    7. Calculations
    8. Templating
      1. Available Templates
      2. Templating Hooks
    9. Exporting
    10. Accessibility and Usability
      1. Keyboard Navigation
      2. Screen Reader Support
    11. Duplicate Entries
  3. FAQs
    1. What happens to child entries when the parent entry is never submitted?
    2. How do I dynamically populate a Nested Form field?
    3. How to set a Nested Form as required?
    4. How do I include Nested Entry totals or Gravity Forms repeater totals in the Parent Form total?
    5. How can I consolidate child products in the parent form’s order summary?
    6. Why are my child entries not counting towards the parent form’s total?
    7. How do I show a single value from each child entry?
    8. Why is my Nested Form modal window (popup) not displaying?
    9. Am I able to add a conditional field within the nested section?
    10. Can I set dynamic min/max Entry Limits?
    11. How do I display a table for Nested Form fields in Confirmations and Notifications?
    12. Is there a way to reorder the columns in the Nested Form field table?
    13. How do I map child form data in a parent form feed?
    14. Can I improve the look of confirmation emails when using the WooCommerce Gravity Forms Products Add-Ons plugin?
    15. Can I customize the output of a Nested Form field in GravityView?
    16. How can I programmatically create Nested Form entries?
    17. Can I add a child entry automatically?
    18. Can I show Parent form data in a Child form’s notifications?
  4. Known Limitations
  5. Hooks
  6. Related Articles

How do I enable this functionality?

After installing and activating the Gravity Forms add-on Nested Forms, you’ll want to add a Nested Form field to your form. Let’s step through that process.

Create two forms; a parent form and a child form using the form editor. The child form will be “nested” in the parent form via the Nested Form field.
Add a Nested Form field on your parent form and select your child form in the Nested Form field setting.
Select which fields from the child form should be displayed in the Nested Form field on the parent form.

Now that you have your first Nested Form field, let’s dig into the specifics of its settings and how it can be configured.


Feature Details

Nested Form Field

General Settings


Nested Form

Select the form that should be used to create nested entries for current form.

Summary Fields

Select which fields from the nested entry should be displayed in the table on the parent form.​​

Notes:

  • This setting only impacts which fields from the nested form appear on the parent form. The modal will always show all fields that belong to the child form.
  • This setting was previously called “Display Fields”.
Entry Labels

Specify a singular and plural label with which entries submitted via this field will be labeled (i.e. “player”, “players”).

Appearance Settings

Modal Header Color

Select a color which will be used to set the background color of the nested form modal header.

Advanced Settings

Entry Limits

Specify the minimum and maximum number of entries that can be submitted for this field.

Dynamic Entry Limits
Use this snippet to dynamically set the Entry Limits based on a Parent form field’s value.
On the Frontend

By default, child entries will be displayed in a clean, compact table. Click the Add button to add a new child entry.

Nested Forms Modal with Default Gravity Forms Styles

The Display Fields selected in the field settings will be displayed for each submitted child entry. Child entries can be edited by clicking Edit and deleted by clicking Delete.

Nested Forms Entries with Default Gravity Forms Styles
On the Backend

The backend will also display the configured Display Fields for each child entry. To view the full child entry click the View Entry button. To view the child entries in the Gravity Forms list view, clicking View Expanded {Item} List.

Child Entries

Child entries are entries that are submitted via a Nested Form field. For examples of how child entries are displayed on the frontend and on the backend, see the respective section.

When a parent entry is trashed, its child entries will be trashed as well.

In order to protect the user from accidental data loss, child entries will be repopulated into the Nested Form field if the parent form is reloaded.

The {Parent} Merge Tag

The special {Parent} merge tag allows you to 1) populate data entered into the parent form into the child form and 2) populate data submitted on the parent entry in child form notifications.

Populate Child Form Fields with Parent Form Data

Any field on the child form that supports a default value can be populated via the {Parent} merge tag. Currently, you must manually specify the field/input ID from the parent form that should be populated into the child form. In the following example, we’ll populate the value of field ID 3 from the parent form into field ID 1 on the child form.

To populate multi-input fields (like the Name field), you will need to specify the input ID (which includes the field ID and the input index).

Here is a quick reference guide for the input indexes of common field types. The input ID will always use the FIELDID.INPUTID format. For example, a field ID of 2 and an input index of 3 would give you an input ID of 2.3.

All examples assume a field ID of 1.

Input Name Index Example
Name Field
Prefix 2 {Parent:1.2}
First 3 {Parent:1.3}
Middle 4 {Parent:1.4}
Last 6 {Parent:1.6}
Suffix 8 {Parent:1.8}
Address Field
Street Address 1 {Parent:1.1}
Address Line 2 2 {Parent:1.2}
City 3 {Parent:1.3}
State / Province 4 {Parent:1.4}
Zip / Postal Code 5 {Parent:1.5}
Country 6 {Parent:1.6}
Display Parent Data in Child Form Notifications

The {Parent} merge tag can also be used to display data from the parent entry in the notification send for a child entry. The desired entry property must be manually specified. For example, if you want to fetch the parent entry ID, you would use {Parent:id}. If you want to fetch the parent entry creation date, you would use {Parent:date_created}.

All properties of the entry object are supported. For a full list, see Gravity Forms’ Entry object documentation.


Feed Processing

By default, GF Nested Forms will only process feeds attached to the nested form after the parent form is submitted.

A practical example of this would be a parent form that creates a team and a nested form that uses the User Registration to register players. In most cases, you wouldn’t want the user accounts created for the players until the team submission has been finalized. GF Nested Forms handles this for you automatically.

If a feed attached to the parent entry has any delayed options enabled (i.e. User Registration), child form feeds are delayed and processed when the parent entry payment is completed.

In some cases, you may want to trigger the nested form feed to be processed when the nested form is submitted (e.g. collecting emails for a mailing list via MailChimp). To do this, use this snippet to enable the advanced Feed Processing setting:

add_filter( 'gpnf_enable_feed_processing_setting', '__return_true' );

And then select, “nested form” in the select.

A child entry is always created from a child form submission. The Feed Processing setting does not impact this behavior.

For even more granular control over when nested feeds are processed, use the gpnf_should_process_feed filter.

Calculations

GF Nested Forms provides support for using Nested Form fields in your Gravity Forms calculations. To use a Nested Form field in your calculation formula, you will need to manually type the desired merge tag using the following template:

{FIELD_LABEL:FIELD_ID:MODIFIER}

To include your child entry totals in your parent form’s total, see our simple walkthrough.

The following examples are based on a field label of “Players” and a field ID of “1”.

  • count – Returns the total number of child entries attached to the Nested Form field. If there are two child entries submitted for a Nested Form field, this merge tag would return 2.

    {Players:1:count}

  • total – Returns the sum of all child entry totals. For example, if Child Entry #1 has a total of $10 and Child Entry #2 has a total of $25, this merge tag would return 35.

    {Players:1:total}

  • sum – Returns the sum of the specified target field’s value from each child entry. For example, you had a Quantity field with an ID of “2” on your nested form and Child Entry #1 had a quantity of 2 and Child Entry #2 had a quantity of 3, this merge tag would return 5.

    {Players:1:sum=2}

  • set – Returns a comma-delimited set of the specified target field’s value from each child entry. For example, you had a Number field with an ID of “2” on your nested form and Child Entry #1 had a quantity of 1 and Child Entry #2 had a quantity of 3, this merge tag would return 1, 3.

    {Players:1:set=2}

    The :set modifier is designed to work with any GF Advanced Calculations math function that accepts a set of numbers (e.g. min(), max()).

Templating

You can take complete control over the Nested Form field output via the templating system. To do so, you will need to copy the template files from the plugin to your theme.

In the plugin, they’re located in the templates directory:

/gp-nested-forms/templates

In your theme, you will need to create a directory named gp-nested-forms and copy the template files there:

/your-theme/gp-nested-forms/

Now anytime GF Nested Forms attempts to load a template file, it will pull your version of the template file from your theme.

Available Templates
  • nested-entries.php – Used to render the child entries in a Nested Form field on the frontend.
  • nested-entries-detail.php – Used to render the child entries on the entry detail page (in the Gravity Forms backend).
  • nested-entries-simple-list.php – Used to render a single value from each child entry in a simple list format when the Nested Form field merge tag (or {all_fields} merge tag) is filtered to a single field via the All Fields Template plugin (e.g., {Players:1:filter[2]}).
  • nested-entry.php – Used to render a single child entry via the Nested Form field merge tag (e.g. {Players:1} – or – when a Nested Form field is rendered via the {all_fields} merge tag.
Templating Hooks

To make minor changes to verbiage or customize the data that will be used to render the Nested Form field, use the gpnf_template_args filter.

Exporting

Child entries can be exported together with their parent entry. Select the parent form on the Export Entries page and select the child fields you want to export alongside the parent entry. For more details, see our tutorial on Exporting with Nested Forms.

By default, the Parent entry data will output on a single line above the corresponding child entries.

Use the gpnf_export_parent_entry_data_on_child_entry_rows hook to export the Parent entry data on every Child entry row.

To only export child entries (with their respective parent data), use the gpnf_export_parent_entry_row hook.

Accessibility and Usability

Keyboard Navigation

All action elements use <button>‘s for consistent interaction for keyboard-centric users. When the Nested Form field’s modal is opened, the focus is trapped within the modal. This means you can tab in a circular loop through all form fields and modal actions. This keeps your users in context and focused.

Screen Reader Support

Nested Forms supports screen readers for all Nested Form field interactions. Screen readers will announce when the modal has been opened, which child entry you are about to edit or delete, and each action available within your Nested Forms modal. This makes it much easier for visually impaired readers to use your forms.

Duplicate Entries

Entry duplication can be activated using the gpnf_enable_duplication hook. Once activated, the Duplicate option will display in the Nested Form field.

FAQs

What happens to child entries when the parent entry is never submitted?

Child entries with no parent entry are called orphaned entries. Orphaned entries are considered “expired” after a week. Expired entries are trashed daily. To modify how long orphaned entries should be preserved, use the gpnf_expiration_modifier filter.

If the user returns the form, their orphaned child entries will be repopulated into the Nested Form field.

How do I dynamically populate a Nested Form field?

Nested Form fields can be dynamically populated the same way as other Gravity Forms fields. Nested Form fields expect a comma-delimited list of entry IDs for the dynamic population value.

How to set a Nested Form as required?

To set a Nested Form or Gravity Forms repeater form as required, go to the Advanced tab of the field options window and set the Minimum field to “1” in the Entry Limits option.

How do I include Nested Entry totals or Gravity Forms repeater totals in the Parent Form total?

We’ll need to include a Calculated Product field on the parent form to capture the entry totals for each nested entry and automatically apply those totals towards the Parent Forms total. Here’s how to set this up in three, quick steps.

Add a Product field to your parent form.
Set the “Field Type” setting to “Calculation” and check Disable quantity field.
Manually enter the Nested Form field merge tag into the “Formula” setting and append the “:total” modifier.

All done! See the demo at top of this page to see this live.

How can I consolidate child products in the parent form’s order summary?

Yes! Once you have set up including Nested Entry totals in the Parent Form total](#how-do-i-include-nested-entry-totals-or-gravity-forms-repeater-totals-in-the-parent-form-total), add the following snippet to also include the Child Entry products in the Parent Product field when viewing the Order Summary.

View CodeDownload Code

Once the snippet has been added, any time the :total merge tag modifier is used in a calculation on the Parent form, the Order Summary will automatically group Child Products into that Parent form field.

Why are my child entries not counting towards the parent form’s total?

You must explicitly include child entry totals in your parent form via a Calculated Product field. See this walkthrough.

To calculate child entry totals in your parent form, the child form must contain at least one Pricing field. The :total merge tag modifier only includes Pricing fields (e.g. Products, Options, Shipping, etc). It will not include Number fields.

How do I show a single value from each child entry?

First, you’ll need to install our All Fields Template plugin. This provides the ability to filter which fields from the nested form are displayed in the Nested Form field’s merge tag (and {all_fields}).

Once installed, you can filter down to a specific field (such as single line text) like so:

{Players:1:filter[1]}

Based on our demo form, this would display a simple list of the Player’s names. This also works for Gravity Forms repeater fields.

Why is my Nested Form modal window (popup) not displaying?

An element with a larger z-index generally covers an element with a lower one. So if your theme has a larger z-index specified, it’ll cover the modal window from the Nested Forms field. The solution in this case is to specify a larger z-index number for the Nested Form modal window, like this: .gpnf-dialog.ui-dialog { z-index: 99999999 !important; }

Am I able to add a conditional field within the nested section?

Yup! A child form can use any of Gravity Forms core features, including conditional logic. You can also add conditional logic to the Gravity Forms repeater fields.

Can I set dynamic min/max Entry Limits?

We have a snippet to set the Nested Form field’s Entry Limits based on a Parent form field’s value. Here’s how you use it:

  1. Add a field to the Parent form that will contain the entry limit and note the Field ID.
  2. Copy and paste the snippet into your theme’s functions.php file.
  3. Paste the following class below the snippet.

    new GP_Nested_Forms_Dynamic_Entry_Min_Max( array(
    	'parent_form_id'       => 4,
    	'nested_form_field_id' => 3,
    	'max_field_id'         => 1,
    	'min_field_id'         => 2, // (Optional)
    ) );

  4. Update the parent_form_id to your Parent Form ID.

  5. Set the nested_form_field_id to the Nested Form Field ID in the Parent Form.
  6. Set either the max_field_id or min_field_id (or both) to the field you noted in Step 1.

When a value is entered in the field on the Parent form, GP Nested Forms will automatically adjust the minimum or maximum Entry Limits to the value in that field.

Haven’t installed a snippet before? Check out this guide on how to install snippets.

How do I display a table for Nested Form fields in Confirmations and Notifications?

Add this snippet to your theme’s functions.php file to add an option to output a table layout for Nested Form fields. Any Confirmation or Notification that uses the {all_fields:gpnf_table} merge tag with the additional :gpnf_table modifier will be output as a table.

Here’s the output without the snippet:

{all_fields} without snippet

And with the snippet installed:

{all_fields} with snippet

The fields that display in the table output will match the settings in the Nested Form field. Any fields set to display in Summary Fields will output in the table. To force the table to output all Child fields, add the gpnf_all_fields modifier to the snippet, like this:

{all_fields:gpnf_table,gpnf_all_fields}.

Is there a way to reorder the columns in the Nested Form field table?

Use this snippet to reorder the columns in the Nested Form field summary table. Here’s how you use it:

  1. Update the Form and Nested Form Field ID.
  2. Update the array with the Field IDs from your Child form. The order of the array determines the order of the columns.

How do I map child form data in a parent form feed?

This is not currently possible; however, you can map child form data in their own feeds configured within the child form.

Can I improve the look of confirmation emails when using the WooCommerce Gravity Forms Products Add-Ons plugin?

By default, WC GF Product Add-Ons strips HTML from form fields, including Nested Form fields. This can be bypassed by adding this snippet to your theme’s functions.php file.

Due to the nature of how Product Add-Ons saves the display value as order meta, this change will only affect new orders.

Can I customize the output of a Nested Form field in GravityView?

Currently the output for a Nested Form field in GravityView can’t be customized, but what you can do is instead use the Custom Content option in GravityView.

GravityView Custom Content

Insert the Merge tag for the Nested Form Field into the Custom Content field.

GravityView Custom Content

The merge tag will output our template, which you can further customize with a custom template.

How can I programmatically create Nested Form entries?

You can use the Gravity Forms API to create Child entries and assign them to a Parent entry using this snippet as a model:

$new_child_entry = array(
    'form_id' => 124, // The ID of the child form.
    'created_by' => 1,
    '1.3' => 'Dave',
    '1.6' => 'Smiff',
    '2' => '(123) 123-1234',
    GPNF_Entry::ENTRY_PARENT_KEY => 234, // The ID of the parent entry.
    GPNF_Entry::ENTRY_PARENT_FORM_KEY => 123, // The ID of the parent form.
    GPNF_Entry::ENTRY_NESTED_FORM_FIELD_KEY => 3, // The ID of the Nested Form field on the parent form.
);
	
$child_entry_id = GFAPI::add_entry( $new_child_entry );

If you have questions about using the API to create Child entries, drop us a line.

Can I add a child entry automatically?

You can! We have a snippet that adds the ability to trigger population in a Nested Form field. It allows you to automatically add a child entry to a Nested Form field with data from your parent form. This is useful when wanting to do things like include the primary registrant as one of the child registrants in the Nested Form field.

Some tips on using it:

  • Static values can be inserted into the Nested Form field using the field_map parameter.
  • To trigger population when any value is inserted into the trigger_field_id, set the trigger_field_value to _notempty_.

If you have questions on configuring the snippet, drop us a line. We’re happy to help.

Can I show Parent form data in a Child form’s notifications?

The following snippet adds three merge tags for use in Child form notifications: {parent_form}, {parent_field}, and {parent_entry}. When combined with merge tag modifiers, these merge tags will let you display information from the Parent entry in Child notifications.

View CodeDownload Plugin

Some example merge tag modifiers are:

  • {parent_form:id}
  • {parent_form:title}
  • {parent_field:label}
  • {parent_entry:id}

For a more comprehensive list, refer to these docs:

  • Field Merge Tag Modifiers
  • Entry Merge Tag Modifiers

Known Limitations

  • You may not include a Nested Form field within a nested form.
  • You may not display a form independently if it is nested inside of a Nested Form field on the same page.
  • Payment feeds will not be processed on child forms.
  • By default, child notifications are sent regardless of the parent entry’s payment status. To delay child notifications until the parent entry has been paid, use this snippet.

Hooks

  • gpnf_all_entries_nested_entry_markup
  • gpnf_bypass_entry_permissions
  • gpnf_can_user_edit_entry
  • gpnf_child_entries_separator
  • gpnf_child_entry_max
  • gpnf_cookie_name
  • gpnf_disable_export_fields
  • gpnf_display_value
  • gpnf_duplicate_entry
  • gpnf_enable_duplication
  • gpnf_entry_limit_max (JS)
  • gpnf_entry_limit_max (PHP)
  • gpnf_entry_limit_min
  • gpnf_entry_url
  • gpnf_expiration_modifier
  • gpnf_export_child_field_header
  • gpnf_export_parent_entry_data_on_child_entry_rows
  • gpnf_export_parent_entry_row
  • gpnf_fetch_form_html_after_add (JS)
  • gpnf_fetch_form_html_after_add_or_edit (JS)
  • gpnf_fetch_form_html_after_delete (JS)
  • gpnf_fetch_form_html_on_load (JS)
  • gpnf_init_nested_form
  • gpnf_init_script_args
  • gpnf_item_labels
  • gpnf_jquery_ui_dependencies
  • gpnf_modal_button_css_classes (JS)
  • gpnf_parent_merge_tag_value
  • gpnf_populated_entry
  • gpnf_post_duplicate_entry
  • gpnf_replace_parent_merge_tag_on_edit (JS)
  • gpnf_save_and_continue_token
  • gpnf_should_delete (JS)
  • gpnf_should_process_feed
  • gpnf_should_send_notification
  • gpnf_should_use_static_value
  • gpnf_submitted_entry_ids
  • gpnf_submitted_nested_entries
  • gpnf_template_args
  • gpnf_use_jquery_ui
Gravity Forms has hundreds of hooks. Check out our Gravity Forms Hook Reference for the most thorough guide to Gravity Forms’ many actions and filters.

Related Articles

  • Register Multiple Users From a Single Form
  • Exporting with Nested Forms
  • How to Build a Player Roster with Age-Based Pricing
  • How To Set Up Conditional Pricing with Nested Forms
  • Calculations with Nested Forms

Perk Deets

  • Version 1.0.27
  • Updated August 2, 2022
  • Released December 25, 2017
  • View Changelog

Changelog

1.0.27

  • Improved support for {Parent} merge tags referencing the parent entry details such as {Parent:entry_id} when set to a field's default value and sent in notifications.

1.0.26

  • Added :set merge tag modifier for calculations which allows you to reutrn a list of values for use Advanced Calculation functions like min() and max().

1.0.25

  • Added support for filtering the Save & Continue token that will be used to populate child entries into a Nested Form field.

1.0.24

  • Fixed @media query for Nested Form table layouts to resolve an inconsistency between 760px and 768px.

1.0.23

  • Improved compatibility with Gravity Flow User Input steps by bringing back compatibility layer.

1.0.22

  • Fixed potential PHP warning if using Gravity Flow by reverting the addition of a new compatibility layer. It will be re-added soon!

1.0.21

  • Fixed potential PHP error in Gravity Flow compatibility layer.

1.0.20

  • Added new gpnf_all_entries_nested_entry_markup filter.
  • Fixed issue where Save & Continue entries would be un-editable/deletable in some situations.
  • Fixed compatibility issues with Gravity Flow user input steps where child entries wouldn't show after editing a child entry, leaving the page, and coming back. Additionally, child entry edit permission handling has been improved.

1.0.19

  • Fixed potential PHP error that could occur on the Entry Details page if GravityView is activated.

1.0.18

  • Fixed issue where the count template would always be used if GravityView is activated.

1.0.17

  • Fixed issue where the Count templates were not being used in GravityView if the view is embedded using a shortcode.
  • Fixed potential PHP error introduced in 1.0.15.
  • Fixed an issue where the event handler in Nested Forms would not properly handle Chained Selects thus causing the placeholder to be incorrect on subsequent openings of the nested form.

1.0.16

  • Fixed issue where child form markup was not refreshed after editing which could result in stagnant form markup.

1.0.15

  • Fixed issue where early child entry adoption via Partial Entries would prevent child entries from being loaded, edited, or deleted in the current session.
  • Improved compatibility with GP Page Transitions Soft Validation functionality.

1.0.14

  • Fixed conflict with eComerce Fields that was caused by Nested Forms unsetting child entry ID to null to ensure a fresh total was generated.

1.0.13

  • Fixed error that could occur when deleting both parent and child entries in the same request.

1.0.12

  • Fixed regression where a change in the form container element caused form change events not to fire.

1.0.11

  • Fixed regression where entries wouldn't be saved in certain circumstances if a Nested Form field is conditionally displayed by a calculated field.

1.0.10

  • Added gpnf_export_parent_entry_row filter to allow disabling the output of parent entry rows alongside their child entry rows.
  • Added gpnf_export_parent_entry_data_on_child_entry_rows to allow exporting parent entry data on child entry rows.

1.0.9

  • Fixed inconsistent behavior of :total, :sum, and :count modifiers between the frontend and the backend if the Nested Form field is hidden. The correct behavior is to return 0 if the Nested Form field is hidden.

1.0.8

  • Added new .destroy() method to window.GPNestedForms to allow for more integrations.
  • Fixed issue where the {Parent} merge tag wouldn't work with wpDataTables.
  • Added new gpnf_submitted_entry_ids filter.
  • Improved compatibility with Gravity Flow Discussion fields when editing child entries.
  • Improved how Nested Forms populates File Upload fields when editing child entries to improve compatibility with File Upload Pro's sorting and cropping functionality.

1.0.7

  • Improved Nested Form exporting by running field values through gform_export_field_value.

1.0.6

  • Added support for populating Paragraph fields with the Rich Text Editor enabled using {Parent} merge tags.
  • Improved compatibility with Gravity Flow User Input Step. The min/max number of child entries is now validated.
  • Improved compatibility with GP Read Only when using {Parent} merge tags.

1.0.5

  • Fixed issues where Product fields' display values did not correctly account for their quantity.
  • Improved experience for child forms where a datepicker is the first field. It no longer opens the datepicker when the child form is displayed. Instead, it focuses the field but does not immediately show the datepicker. This maintains accessibility while improving overall user experience.

1.0.4

  • Fixed regression with multiple datepickers not behaving correctly in Nested Forms if focus trap is enabled.

1.0.3

  • Fixed regression where datepicker selects could not be interacted with in Firefox due to Focus Trap.

1.0.2

  • Fixed PHP notice on parent form submission.
  • Added "Update URI" to plugin header to improve security.

1.0.1

  • Fixed issue where unnecessary whitespace could cause formatting issues when displaying the Add Entry button.

1.0

  • Added new icon for the Nested Form field type.
  • Improved the Nested Form field styling in the editor.
  • Fixed a notice when GPNF cookie exists but "request" property has not been set.
  • Fixed issue where {Parent} merge tags would not be replaced in a child form if a validation error occurred in the child form and the value that the parent merge tag was pulling was empty.

1.0-rc-1.10

  • Added gpnf_should_delete JavaScript filter.

1.0-rc-1.9

  • Fixed the "Delete" button in the child entry edit modal. It wasn't doing anything when clicked. Now it is!
  • Fixed styling issue where the "There are no entries." text was right-aligned rather than center-aligned on mobile.

1.0-rc-1.8

  • Fixed an issue where entries that have been attached to a parent via filter still expire and are cleaned up by the CRON.

1.0-rc-1.7

  • Added support for editing child entries populated via an Easy Passthrough token.

1.0-rc-1.6

  • Fixed issue where values of fields hidden via conditional logic were not deleted after editing a child entry.
  • Updated Knockout to be a separate JavaScript file like it was prior to 1.0-rc-1 so it's immediately accessible to custom GPNF templates.
  • Updated scripts on the frontend to export Knockout to window.ko.

1.0-rc-1.5

  • Added gpnf_child_entries_separator filter to allow modifying the separator between child entries in the All Entries view.

1.0-rc-1.4

  • Added support for attaching child entries to a parent entry via the GF REST API's /forms/[FORM_ID]/submissions endpoint.

1.0-rc-1.3

  • Fixed potential JavaScript errors when submitting/editing entries for some use-cases.
  • Added enableFocusTrap to gpnf_init_script_args.

1.0-rc-1.2

  • Fixed issue where jQuery UI modal was not updated to work with our new build flow.

1.0-rc-1.1

  • Fixed issue where datepicker widget was not focusable due to focus being trapped in the Nested Form modal.
  • Fixed issue where 3rd-party usage of GPNestedForms.loadEntry() would result in an error if the modal had not yet been activated.

1.0-rc-1.0

  • Fixed conflict where GPFUP's editor actions (cancel/crop) were not interactable when opened from a Nested Form modal due to GPNF's new focus trap.
  • Improved loading experience for Nested Forms by preventing the max entries message and row actions from showing on initial load.
  • Added support for screen readers on child entry edit actions.
  • Added gpnf_enable_duplication filter to enable "Duplicate" action for child entries.
  • Added gpnf_duplicate_entry filter to allow modifying the entry that will be duplicated.
  • Updated Nested Entries template to display "Duplicate" action when enabled via filter.
  • Improved default styles for Nested Form fields.
  • Improved screen reader support for modal interactions.
  • Fixed issue where button submit animation was not triggered when submit was triggered by "Enter" keypress.
  • Improved accessibility of keyboard navigation. Tabbing is now restricted to focusable elements in the Nested Form modal when opened.
  • Added gpnf_populated_entry filter to allow filtering the entry that is about to be populated into the child form for editing.
  • Fixed issue where calculations of multiple parent forms on the same page could conflict causing modifiers such as :total to not work as expected.

1.0-beta-10.10

  • Fixed issue where {Parent} merge tags would not be parsed if used in fields conditionally shown by a Section Field.

1.0-beta-10.9

  • Added a CSS class to the Nested Entries Detail Simple template to support targeting specific tables when multiple tables are displayed.
  • Updated gpnf_init_nested_forms filter to pass the current instance of GPNestedForms as the second parameter.

1.0-beta-10.8

  • Fixed issue where Summary Fields setting did not always initialize correctly.

1.0-beta-10.7

  • Fixed an issue where Drop Downs were not correctly repopulated after being revealed by conditional logic if their default value included a {Parent} merge tag.

1.0-beta-10.6

  • Added a link in the Nested Form field setting to allow you to open the child form in the form editor in a new tab.

1.0-beta-10.5

  • Fixed a potential issue where the {parent} merge tag may remain visible when editing entries while the source field is empty.

1.0-beta-10.4

  • Improved support for checkboxes pulled into child forms using the {Parent} merge tag. When more than one checkbox is selected, the values/labels will be comma delimited.
  • Added :label modifier to {parent} GPNF merge tags.

1.0-beta-10.3

  • Updated gpnf_modal_button_css_classes to use cancel-mobile for the type parameter when filtering the mobile cancel button.

1.0-beta-10.2

  • Added GP_Nested_Forms-&gt;get_query_arg() to enable additional customization/parsing of URL parameters in a nested form.
  • Fixed a potential future incompatibility issue with GF API.

1.0-beta-10.1

  • Added gpnf_modal_button_css_classes JavaScript filter.
  • Added gpnf_should_trash_entries_on_delete filter.
  • Fixed issue where child entry notifications would not be sent when using a Nested Form field with the WooCommerce GF Product Add-ons extension.

1.0-beta-10

  • Improved user experience of how Summary Fields are managed. They're now listed out vertically and sortable.
  • Added French translation. Thank you, Cyrille Sanson!
  • Fixed typo in :sum modifier merge tag default value.

1.0-beta-9.35

  • Added i18n support for GPNF's "Close" modal button.

1.0-beta-9.34

  • Updated custom template names to have precedence before all standard template names.
  • Updated docblock with variables in nested-entries-all.php.
  • Added new GP_Nested_Forms::get_template_names() method and updated instances where we specified template names manually to use this new helper method.

1.0-beta-9.33

  • Added support for using :value (or ,value if using All Fields Template) Merge Tag modifier for Nested Form fields.

1.0-beta-9.32

  • Added support for disabling delete confirmation by passing empty confirmAction label.
  • Updated gpnf_disable_new_cancel_confirmation filter's default value to true if a non-false value is passed for the confirmAction label.
  • Fixed a potential issue where a child form that requires login did not display the proper login required message.
  • Fixed issue where number formats could be lost when editing a Nested Entry with conditional logic.

1.0-beta-9.31

  • Fixed an issue where {Parent} merge tags were not processed correctly in nested form's notification.

1.0-beta-9.30

  • Fixed issue where init scripts for Nested Forms could be loaded twice and cause inconsistent behavior such as doubled up loading indicators.

1.0-beta-9.29

  • Fixed an issue where AJAX rendered forms may display a JS error when using List fields.

1.0-beta-9.28

  • Added gpnf_replace_parent_merge_tag_on_edit filter to re-populate parent merge tags when editing an entry.
  • Added new gpnf_fetch_form_html_after_add and gpnf_fetch_form_html_after_delete JavaScript filters
  • Fixed an issue where an imported parent form without its child may generate a PHP notice.
  • Fixed PHP notice in Gravity Forms Coupons Add-On settings page.

1.0-beta-9.27

  • Fixed an issue where {Parent} merge tags didn't work with Drop Down fields.
  • Fixed issue where parent form ID was not correctly set as a template name variant for the 'nested-entries-detail' template.
  • Fixed issue where Rich Text Editor test searched for Windows-specific keyboard shortcut in button label.

1.0-beta-9.26

  • Added support for filtering the modal's submit button label.

1.0-beta-9.25

  • Fixed issue where submitting a child entry with a pending upload would result in the submit button getting stuck as a spinner.

1.0-beta-9.24

  • Added gpnf_disable_new_cancel_confirmation filter.

1.0-beta-9.23

  • Fixed issue where GPNF's cookie could be reset under certain network conditions and if there are more than one Nested Forms on a parent form.
  • Fixed a potential issue that may cause GPNF to fail to render.

1.0-beta-9.22

  • Fixed issue where init scripts were not executed with older versions of jQuery.
  • Fixed an issue where modified parent merge tag values would be reset on entry edit.

1.0-beta-9.21

  • Fixed a potential issue where In-line Calendars may duplicate on submission error.

1.0-beta-9.20

  • Updated Gravity Perks minimum required version to 2.2.3.
  • Updated field settings markup, styles and functionality to work with Gravity Forms 2.5.
  • Fixed issue where Nested Forms would not load if using Conditional Logic and the gform_init_scripts_footer filter.

1.0-beta-9.19

  • Fixed an issue displaying list fields in GPNF entries. (#82)
  • Improved compatibility with Gravity Forms Multilingual by WPML.
  • Improved compatibility with Paragraph fields using the Rich Text Editor (TinyMCE).

1.0-beta-9.18

  • Fixed an issue where parent merge tags replace submitted values on error.

1.0-beta-9.17

  • Improved compatibility with GravityView by filtering out child entries of unsubmitted parent forms.
  • Added security enhancements. (#77)
  • Added latest version of Knockout.js library
  • Fixed issue with Save & Continue not working in some cases on multi-page forms.
  • Fixed issue where child entries could show as duplicated on the client-side when submitting an AJAX parent form.
  • Fixed a potential issue where Expanded Entries link may be displayed in GV.

1.0-beta-9.16

  • Fixed a potential issue when using index[0] as a modifier with the All Fields Template snippet.

1.0-beta-9.15

  • Removed the force display code that overrides GF's default conditional logic behavior. (#63)

1.0-beta-9.14

  • Fixed issue where scripts were initialized for each instance of a child form if the same child form was included by multiple Nested Form fields. (#68)

1.0-beta-9.13

  • Added support for processing values formatted as currency via the :sum modifier. (#67)

1.0-beta-9.12

  • Fixed a potential issue with iniFormScripts and currentPage number.

1.0-beta-9.11

  • Fixed a potential issue where fields with a parent merge tag may reset.

1.0-beta-9.10

  • Removed jQuery ready wrapper from GPNestedForms init. (#61)
  • Fixed issue where parent form calculations briefly flashed the raw Nested Forms field value on submission.

1.0-beta-9.9

  • Added [gpnf_set_parent_entry_id](https://gravitywiz.com/documentation/gpnf_set_parent_entry_id/) filter.

1.0-beta-9.8

  • Fixed a variety of issues related to init scripts - and - added support for editing Signature fields. (#55)

1.0-beta-9.7

  • Improved reliability of Nested Form fields when placed on non-first pages in AJAX-enabled, multi-page forms.

1.0-beta-9.6

  • Fixed an integration issue with Gravity Forms Date Dropper Field plugin.

1.0-beta-9.5

  • Fixed an issue where Chained Selects fields may not export properly.

1.0-beta-9.4

  • Fixed regression where interactive elements of child forms such as Enhanced UI for Select fields or Live Merge Tags from Populate Anything would not work correctly.
  • Fixed issue where Nested Forms calculations would not work properly in some cases on multi-page forms.

1.0-beta-9.3

  • Removed session child entries upon utilizing GF Save and Continue feature.
  • Fixed PHP notice on frontend if no fields are selected in the Summary Fields setting.

1.0-beta-9.2

  • Fixed issue where filtering Nested Form field merge tag to single value failed unexpectedly.

1.0-beta-9.1

  • Fixed issue where Conditional Logic would cause the Add Entry button to become re-enabled if it was disabled.
  • Added additional formId, fieldId, and gpnf params to gpnf_fetch_form_html_on_load JS filter.

1.0-beta-9

  • Improved performance by not loading Nested Form markup on form load and also not initiating Nested Forms unless visible on the current page.

1.0-beta-8.81

  • Fixed an issue where enhanced UI fields may fail to populate using parent merge tags.

1.0-beta-8.80

  • Fixed potential PHP warning.
  • Added gpnf_should_use_static_value filter to allow toggling the use of static values in Nested Form fields.

1.0-beta-8.79

  • Fixed issue where trashed parent entries did not correctly show their child entries and when restored from trash failed to restore their child entries.

1.0-beta-8.78

  • Fixed a WooCommerce integration issue where child form feeds were not processed on checkout.
  • Fixed an issue where GPNF displayed old deprecated arguments for modal titles.

1.0-beta-8.77

  • Fixed issue where datepickers were not destroyed when initializing the child form modal.

1.1

  • Fixed issue where new method for retrieving Nested Form field value dynamically incorrectly returned all child entries for a parent entry rather than only the child entries for the current Nested Form field.

1.0

  • Added support for auto-resizing modal when window is resized.
  • Added responsive styling for Nested Form field.
  • Updated acceptance tests to work with tingle. Added export entries test.
  • Updated font size of modal header.
  • Fixed notice generated by undeclared $entry_ids variable in entry limit validation.
  • Fixed issue where modal content was hidden incorrectly when two of the same child form existed on the page.
  • Fixed UX issue where modal buttons were re-initialized on the modal confirmation page, creating a flicker on the submit button as the spinner was replaced with the submit button text.

1.0-beta-8.76

  • Added support for providing a negative index to the :index modifier to allow selecting backwards from the last submitted child entry.

1.0-beta-8.75

  • Fixed issue where child form failed to submit when WCGFPA applied styles to force hide all submit buttons.

1.0-beta-8.74

  • Added support for an :index modifier to allow targeting a specific ch… (#38)
  • Fixed an issue where the "html" format was forced on the simple list template.
  • Fixed an issue where a misconfigured nested form may generate PHP warnings in other perks.
  • Fixed an issue in IE11 where GPNF would scroll to the top after editing an entry.
  • Fixed issue where requested spinner graphic did not exist in Gravity Forms 2.5.

1.0-beta-8.73

  • Fixed an issue in IE11 where GPNF would scroll to the top after editing an entry.

1.0-beta-8.72

  • Fixed issue where duplicating a child entry created two duplicates instead of the expected one.

1.0-beta-8.71

  • Added gpnf_post_duplicate_entry filter to allow doing something after a child entry has been duplicated on the frontend.

1.0-beta-8.70

  • Fixed a compatibility issue with Gravity Flow and Date fields.

1.0-beta-8.69

  • Fixed an integration issue where WooCommerce Gravity Forms Plugin would hide the submit button.

1.0-beta-8.68

  • Added gpnf_cookie_name filter.
  • Added support for Gravity Forms 2.5. (#30)

1.0-beta-8.67

  • Added support for populating values passed from the parent form's field_values shortcode parameter.
  • Fixed issue where child form inline styles that shared a parent form handle were enqueued too late and never output.

1.0-beta-8.66

  • Added responsive support when displaying the Nested Entries Detail template on the frontend.
  • Added inline docs for "gpnf_entry_limit_min" and "gpnf_entry_limit_max" filters.
  • Added translator comments for several strings.

1.0-beta-8.65

  • Fixed an issue where parent merge tags in child notifications may not be parsed correctly.

1.0-beta-8.64

  • Fixed an issue where submit button would flash briefly on nested form modal before saving the entry.

1.0-beta-8.63

  • Added a more verbose notice when nested form and fields are not set.

1.0-beta-8.62

  • Added gpnf_session_initialized action to support doing something after the Nested Forms session has been initialized.

1.0-beta-8.61

  • Added header text for actions column to improve accessibility (Thanks OIT Design & Web Services NCSU).

1.0-beta-8.60

  • Added support for duplicating child entries in a Nested Form field. Currently requires manually adding the action link template.

1.0-beta-8.59

  • Added support for filtering child entries by the Parent Entry ID in the Entries list view in addition to filtering by the Parent Entry ID in the Gravity Flow Form Connector plugin.

1.0-beta-8.58

  • Fixed an issue where GPNF won't recognize HTML button elements. (#21)

1.0-beta-8.57

  • Added gpnf_submitted_nested_entries hook. (#20)

1.0-beta-8.56

  • Improved compatibility with Gravity PDF Previewer when using legacy jQuery UI modal.

1.0-beta-8.55

  • Improved compatibility with Gravity PDF Previewer.

1.0-beta-8.54

  • Fixed issue where Nested Forms would show a blank row in the {all_fields} merge tag if no entries are provided.

1.0-beta-8.53

  • Fixed submit button on modal when nested form is configured to use an image. (#19)

1.0-beta-8.52

  • Fixed issue where child entries would not be attached to the proper entry when used in conjunction with the WooCommerce Gravity Forms Product Add-ons plugin.

1.0-beta-8.51

  • Fixed issue where GP Nested Forms would cause the form buttons to change when using multiple forms on a given page in conjunction with GravityView.
  • Fixed issue where scrollbar did not work correctly when the modal was open by updating Tingle to v0.15.3.
  • Reverted stop-gap fix for {Parent} merge tag compatibility with Populate Anything. Fixed in Populate Anything 1.0-beta-4.54.

1.0-beta-8.50

  • Fixed issue where {Parent} merge tag replacement did not trigger Populate Anything population in legacy jQuery UI modal as well.

1.0-beta-8.49

  • Fixed issue where {Parent} merge tag replacement did not trigger Populate Anything population.

1.0-beta-8.48

  • Fixed issue where {Parent} merge tag that targeted non-existent parent form field would return "undefined" rather than an empty string. This change allows a child form to be used on different parent forms.
  • Fixed issue where displayOnly fields (e.g. HTML, Section) were available in form exports.

1.0-beta-8.47

  • Improved {Parent} merge tag. (#18)
  • Added support for including custom content alongside {Parent} merge tags (e.g. "Name: {Parent:3}").
  • Added support for multiple parent merge tags (e.g. "{Parent:3.3} {Parent:3.6}").
  • Updated Nested Form field input markup to no longer apply the gform_pre_render filter if the child form is not set, does not exist, or if the Nested Form field is being rendered on the form editor view.

1.0-beta-8.46

  • Fixed noticed caused by check for $_GET property that may not be present.

1.0-beta-8.45

  • Fixed issue where GPPA disabled submit button but modal buttons were still clickable resulting in a child form that would fail to submit.

1.0-beta-8.44

  • Added gpnf_child_entry_max to allow accepting more (or less) entries in a Nested Form field.
  • Fixed fatal error introduced in 1.0-beta-8.43.

1.0-beta-8.43

  • Updated the method used to get the current GravityView entry being edited. (#16)

1.0-beta-8.42

  • Fixed issue where orphaned child entries were not expired on the expected schedule due to double buffering of the entry expiration modifier.

1.0-beta-8.41

  • Added accessibility enhancements with an emphasis on navigability.

1.0-beta-8.40

  • Added support for re-populating child entries when editing a parent form via WC GF Product Add-on's Enable Card Edit option.

1.0-beta-8.39

  • Fixed issue where Next/Previous buttons in child form were not correctly classed.

1.0-beta-8.38

  • Fixed issue where {Parent} merge tags were not correctly replaced after hiding/showing a field via conditional logic.

1.0-beta-8.37

  • Fixed regression in 1.0-beta-8.35 which caused Nested Form fields on forms without a Datepicker to fail to initialize.
  • Fixed issue introduced in GravityView 2.6 which prevented child entries from loading when editing an entry.

1.0-beta-8.36

  • Fixed issue where trashed child entries still appeared in the Nested Form field.

1.0-beta-8.35

  • Fixed issue where datepickers were not properly initialized in child forms when editing an entry on the frontend via Gravity Flow.

1.0-beta-8.34

  • Updated responsive styles to apply to portrait mode on most tablets.

1.0-beta-8.33

  • Fixed issue where :value modifier was ignored when filtering a single item in a Nested Form field (e.g. {Parent:1:filter[2],value}).

1.0-beta-8.32

  • Fixed issue where child entries added via a Gravity Flow User Input step did not save correctly to the parent entry.

1.0-beta-8.31

  • Updated responsive styles to apply for all touch-based devices.
  • Removed unused GP Nested Forms Template setting in GravityView widget options.

1.0-beta-8.30

  • Fixed issue where child entries were capped at 20; new cap is 99.

1.0-beta-8.29

  • Added support for using admin label in child entry export fields and headers.

1.0-beta-8.28

  • Fixed conflict with Elementor where Nested Form fields did not initialize properly.

1.0-beta-8.27

  • Fixed notice generated when session cookie's "nested_entries" property was not set.

1.0-beta-8.26

  • Fixed issue where order of child entries in backend did not match the order of child entries submitted on the frontend.

1.0-beta-8.25

  • Updated 'gpnf_init_nested_form' to be a Gravity Forms JavaScript Hook rather than a jQuery event.

1.0-beta-8.24

  • Added 'gpnf_init_nested_form' jQuery event to improve compatibility with GP Populate Anything's Live Merge tags when used in a Nested Form.

1.0-beta-8.23

  • Added support for processing child feeds after a delayed payment from PayPal Standard.

1.0-beta-8.22

  • Added support for processing child feeds on delayed payments.

1.0-beta-8.21

  • Fixed issue where the sticky footer in the modal did not stay at the bottom in Chrome.

1.0-beta-8.20

  • Fixed notice generated when refreshing nested form markup.

1.0-beta-8.19

  • Fixed issue where Entry Limit was not honored when displaying a child form.

1.0-beta-8.18

  • Improved performance of dynamic Nested Form field value retrieval.
  • Updated the PartialEntries acceptance test.

1.0-beta-8.17

  • Updated how Nested Form field values are handled; fixes issue where fetching a parent entry via GFAPI::get_entry() failed to populate the correct value for Nested Form fields.

1.0-beta-8.16

  • Fixed issue where max entry limit message was not translatable.

1.0-beta-8.15

  • Updated GP_Nested_Forms::get_fields_by_ids() method to return the fields in order of the field IDs passed.

1.0-beta-8.14

  • Added support for Partial Entries add-on.

1.0-beta-8.13

  • Fixed issue where GF Encrypted Fields was removing child entry meta resulting in child entries that were not property connected with their parent.

1.0-beta-8.12

  • Fixed issue where using global namespace removed events from previously initialized instances of Nested Forms.

1.0-beta-8.11

  • Fixed various issues with AJAX-enabled forms. (#14)

1.0-beta-8.10

  • Fixed issue where Post Category fields would not be re-populated with the correct value when editing a child entry.

1.0-beta-8.9

  • Fixed issue where the GPNF session cookie wouldn't be properly reset after editing a form with Nested Form fields in a GravityView.
  • Fixed issue where child entries added when editing an entry with a GravityView view would not be assigned to the parent form.

1.0-beta-8.8

  • Fixed issue where {Parent} merge tag wouldn't work on certain multi-page forms.

1.0-beta-8.7

  • Fixed issue where some strings displayed in the child form modal were not localized.

1.0-beta-8.6

  • Fixed issue where AJAX-enabled parent forms caused modal to fail to close after submitting a child form.
  • Fixed issue where {Parent} merge tag wouldn't work in some cases.

1.0-beta-8.5

  • Fixed potential recursion with handle_nested_forms_markup filter.

1.0-beta-8.4

  • Fixed issue where deleting a child entry from from the modal's delete button failed to delete the child entry.

1.0-beta-8.3

  • Added support for auto-resizing modal when window is resized.
  • Added responsive styling for Nested Form field.
  • Updated Nested Forms field value method to ignore entries with alphanumeric IDs.
  • Updated acceptance tests to work with tingle. Added export entries test.
  • Updated font size of modal header.
    • Fixed issue where new method for retrieving Nested Form field value dynamically incorrectly returned all child entries for a parent entry rather than only the child entries for the current Nested Form field.
  • Fixed notice generated by undeclared $entry_ids variable in entry limit validation.
  • Fixed issue where modal content was hidden incorrectly when two of the same child form existed on the page.
  • Fixed UX issue where modal buttons were re-initialized on the modal confirmation page, creating a flicker on the submit button as the spinner was replaced with the submit button text.

1.0-beta-8.2

  • Fixed regression with {Parent} merge tag when using the new responsive UI.

1.0-beta-8.1

  • Fixed issue where new method for retrieving Nested Form field value dynamically incorrectly returned all child entries for a parent entry rather than only the child entries for the current Nested Form field.

1.0-beta-8

  • Added full integration with GravityView.
  • Added support for exporting child entries alongside their parent entry.
  • Added resopnsive styling and implemented a new modal experience.
  • Added 'gpnf_entry_limit_min' and 'gpnf_entry_limit_max' WordPress filters.
  • Added merge tag modifiers to merge tag selector for calculation-enabled fields.
  • Added message when max entry limit is reached.
  • Added security enhancement.
  • Added is_gravityview() helper method.
  • Added support for admins and users with the 'gravityforms_edit_entries' capability to edit nested entries on the front end created by other users
  • Added nested-entries-count.php template. This is a new template that can be used to display the count of child entries in a parent entries.
  • Added support for changing modal spinner via Gravity Forms' "gform_ajax_spinner_url" filter.
  • Added gpnf_disable_export_fields filter to allow disabling the addition of child form fields to the parent form export settings.
  • Updated Nested Form field value handling.
  • Updated GravityView integration to use the count template for views and the simple template on single entry pages.
  • Fixed issue where query parameters were not populated correctly when editing child entries.
  • Fixed issue where Delete and Cancel buttons would show in Nested Forms on GravityView edit views.
  • Fixed conflict with Preview Confirmation where psuedo-entry without a proper entry ID would return child entries that did not belong to the psuedo-entry.
  • Fixed issue where extra lines were being added to parent export when no child fields were selected.
  • Removed feed processing setting to alleviate confusion.

1.0-beta-7.28

  • Fixed issue where extra lines were being added to parent export when no child fields were selected.

1.0-beta-7.27

  • Fixed conflict with Preview Confirmation where psuedo-entry without a proper entry ID would return child entries that did not belong to the psuedo-entry.

1.0-beta-7.26

  • Added gpnf_disable_export_fields filter to allow disabling the addition of child form fields to the parent form export settings.

1.0-beta-7.25

  • Added support for changing modal spinner via Gravity Forms' "gform_ajax_spinner_url" filter.
  • Improved Nested Form Field value handling.

1.0-beta-7.24

  • Added security enhancement.
  • Added is_gravityview() helper method.
  • Updated GravityView integration to use the count template for views and the simple template on single entry pages.
  • Added nested-entries-count.php template. This is a new template that can be used to display the count of child entries in a parent entries.
  • Fixed issue where Delete and Cancel buttons would show in Nested Forms on GravityView edit views.
  • Added support for admins and users with the 'gravityforms_edit_entries' capability to edit nested entries on the front end created by other users

1.0-beta-7.23

  • Fixed issue where query parameters were not populated correctly when editing child entries.
  • Added 'gpnf_entry_limit_max' JS filter.
  • Added 'gpnf_entry_limit_min' and 'gpnf_entry_limit_max' WordPress filters.

1.0-beta-7.22

  • Added support for exporting child entries alongside their parent entry. (#11)
  • Added "gpnf_enable_feed_processing_setting" to re-enable.
  • Added support for exporting child entries along side their parent entry.

1.0-beta-7.21

  • Fixed issue when rendering child entries which contained sections with conditional logic.
  • Fixed issue where maximum entries met message would be shown in the form editor at all times.
  • Updated session script to be part of the GPNestedForms class.
  • Added message beside submit button if maximum number of entries is met.
  • Added count, total, and sum merge tags to merge tag selectors including the merge tag dropdown for calculations.
  • Added support for Nested Forms on GravityView edit pages.
  • Added count, total, and sum merge tags to merge tag selectors including the merge tag dropdown for calculations.
  • Added support for Nested Forms on GravityView edit pages.
  • Fixed issue where deleting parent entries would not result in the child entries being deleted.

1.0-beta-7.20

  • Updated {Parent} merge tag to be replaced with an empty string when loading a form outside of a Nested Form field.

1.0-beta-7.19

  • Added "gpnf_can_user_edit_entry" filter to better support overriding entry permissions when viewing, editing, and deleting entries in Nested Forms fields.

1.0-beta-7.18

  • Added support for using Nested Forms in WordPress admin.

1.0-beta-7.17

  • Fixed error generated when {Parent} merge tag was called in a context where parent entry was expected but did not exist (i.e. child form notifications).

1.0-beta-7.16

  • Fixed issue where child entry created_by property did not match that of its parent when a non-logged-in user registered via the parent form.

1.0-beta-7.15

  • Fixed issue with ACF where Limit Submission's version of select2 was loaded instead of its own.
  • Fixed notices generated when Nested Form field does not have a nested form selected.

1.0-beta-7.14

  • Added "gpnf_parent_merge_tag_value" filter to allow modify the value of the parent merge tag before it is replaced.

1.0-beta-7.13

  • Fixed issue where product cache was not refreshed correctly.

1.0-beta-7.12

  • Fixed issue where incorrect child from was refreshed after adding, editing or deleting an entry when multiple Nested Form fields existed on a parent form.

1.0-beta-7.11

  • Added two new filters: ‘gpnf_process_feeds_nested_entries’ and ‘gpnf_process_feeds_nested_form’
  • Added gp_nested_forms()->get_nested_form() helper method
  • Fixed issue where the raw value of some fields including fields with dynamic choices from GP Populate Anything would be used instead of the choice text/label.

1.0-beta-7.10

  • Fixed fatal error generated by trashing a parent entry after child entry has been permanently deleted.
  • Fixed issue where <hr> in All Fields markup were incorrectly visible in some mail clients.

1.0-beta-7.9

  • Fixed issue where close button was not styled property in Safari on mobile devices.

1.0-beta-7.8

  • Fixed issue where values of GPPA-populated choice-based fields were not correctly displayed in the Nested Form field on the entry detail view.

1.0-beta-7.7

  • Fixed issue where {Parent} merge tag did not correctly populate from Radio Button fields.
  • Updated plugin author.

1.0-beta-7.6

  • Added support for scrolling back to original page position after closing modal; impacts long child forms, particularly on mobile.
  • Added support for formatting {all_fields} value for text. Requires Gravity Forms 2.4.8.12 or greater.

1.0-beta-7.5

  • Updated how markup for Nested Form field merge tags (individually and in {all_fields}) is generated.
  • Added "nested-entries-all" template to allow overriding the the markup generated for Nested Form field merge tags (individually and in {all_fields}).
  • Updated Display Fields setting name to "Summary Fields" and improved description to alleviate customer confusion on its purpose.

1.0-beta-7.4

  • Updated check for WooCommerce to be more comprehensive.

1.0-beta-7.3

  • Updated Nested Forms markup to always be output in the footer; resolves an on-going issue with the WC GF Product Add-ons plugin.
  • Added a simplified Nested Entries Detail template; will be automatically used when a Nested Form field is displayed in a WooCommerce cart or on Gravity Forms' Print Entry view.

1.0-beta-7.2

  • Fixed JS error generated when Beaver Builder triggers document ready event without having reloaded the UI.

1.0-beta-7.1

  • Added support for handling change in Gravity Forms 2.4.7 which adds support for wrapping GF's inline scripts in DOMContentLoaded listener.
  • Updated minimum Gravity Forms version to 2.4.
  • Updated logging for cron events to be more helpful.
  • Fixed issue where modal was not visible when other elements on page had a higher z-index.
  • Fixed issue where datepicker inside modal was displayed behind modal due to z-index conflict.

1.0-beta-7

  • Added "gpnf_session_script_data" filter to allow modifying the data used to initialize the session script.
  • Added support for automatically populating fields from session cookie when refreshing the form markup.
  • Added logging around daily cron that cleans up orphaned entries.
  • Added basic responsive fix to prevent Nested Entries table from spilling outside container on mobile.
  • Added support for gpnf_bypass_entry_permissions filter to allow advanced users to determine if entry permissions should be bypassed when populating entries into a Nested Form field.
  • Updated child form feeds to be processed after parent form feeds when configured to be processed when the parent form is submitted.
  • Updated Nested Entries Detail template to no longer output "View Entry" or "View Expanded List" when in print view.
  • Updated parent entry processing to run child form through gform_pre_process filter to improve compatibility with 3rd party add-ons.
  • Updated "gpnf_append_nested_forms_to_footer" to default to true if "gform_init_scripts_footer" is set to true.
  • Updated priority of GP_Nested_Forms::output_nested_forms_markup() to 21 to ensure it is output after jQuery.
  • Updated session cookie with COOKIEPATH, COOKIE_DOMAIN, and secure flag.
  • Updated cookies to use COOKIE_DOMAIN constant for consistency with WordPress.
  • Updated gpnf_template_args docblock with addition of the "actions" property and removal of the "related_entries_link" property.
  • Fixed issue where close button does not appear when Bootstrap is loaded after jQuery UI.
  • Fixed notice when form mapped in Nested Form field no longer exists.
  • Fixed issue where child entries were not editable and failed to persist when navigating between pages after being populated via Save & Continue.
  • Fixed use of deprecated GFFormsModel::get_incomplete_submission_values() method.
  • Fixed issue where Print Entry view displayed "&nbsp".
  • Fixed issue where perk name was not output on Logging page.
  • Fixed issue where {Parent} merge tag was case sensitive.
  • Fixed issue where modal header color setting was not saved correctly.
  • Fixed issue where Nested Form fields on different forms loaded on the same page did not initialize correctly.
  • Fixed JS error when attempting to repopulate entries between AJAX-enabled page submissions.
  • Fixed issue where field ID was not respected when fetching submitted nested entries.
  • Fixed issue where :sum merge tag was not working correctly on AJAX-enabled forms with multiple Nested Form fields.
  • Fixed notice generated by attempting to access $form as an object.
  • Fixed security issue where arbitrary entry data could be viewed in a Nested Form field.
  • Fixed up {Parent} merge tag to work with paginated child forms
  • Fixed issue where saving Nested Form field without fields in the Form Editor would cause a PHP notice/error
  • Fixed issue where multiple "other" choices were added when including multiple instances of the same child form.
  • Fixed issue where the Multi-file Upload field's delete icon returned a 404 when displayed in a nested form.
  • Fixed issue where adding an image to a Multi-field Upload field on a nested form did not correctly save the image when editing a child entry.
  • Fixed issue where {Parent} did not reevaluate conditional logic when value changed.
  • Fixed issue where AJAX-enabled forms still broke Nested-Forms-based calculations.
  • Fixed issues with calculations and saving entries when AJAX was enabled on parent form.
  • Fixed issue where parent merge tag replacement broke routing in notifications.

1.0-beta-6.24

  • Fixed issue where close button does not appear when Bootstrap is loaded after jQuery UI.
  • Fixed notice when form mapped in Nested Form field no longer exists.

1.0-beta-6.23

  • Fixed issue where child entries were not editable and failed to persist when navigating between pages after being populated via Save & Continue.

1.0-beta-6.22

  • Updated Nested Entries Detail template to no longer output "View Entry" or "View Expanded List" when in print view.
  • Fixed use of deprecated GFFormsModel::get_incomplete_submission_values() method.
  • Fixed issue where Print Entry view displayed "&nbsp".

1.0-beta-6.21

  • Updated parent entry processing to run child form through gform_pre_process filter to improve compatibility with 3rd party add-ons.

1.0-beta-6.20

  • Fixed issue where perk name was not output on Logging page.

1.0-beta-6.19

  • Added logging around daily cron that cleans up orphaned entries.

1.0-beta-6.18

  • Fixed issue where {Parent} merge tag was case sensitive.

1.0-beta-6.17

  • Fixed issue where modal header color setting was not saved correctly.

1.0-beta-6.16

  • Added support for automatically populating fields from session cookie when refreshing the form markup.

1.0-beta-6.15

  • Fixed issue where Nested Form fields on different forms loaded on the same page did not initialize correctly.
  • Updated "gpnf_append_nested_forms_to_footer" to default to true if "gform_init_scripts_footer" is set to true.
  • Updated priority of GP_Nested_Forms::output_nested_forms_markup() to 21 to ensure it is output after jQuery.
  • Updated session cookie with COOKIEPATH, COOKIE_DOMAIN, and secure flag.

1.0-beta-6.14

  • Updated cookies to use COOKIE_DOMAIN constant for consistency with WordPress.

1.0-beta-6.13

  • Added "gpnf_session_script_data" filter to allow modifying the data used to initialize the session script.

1.0-beta-6.12

  • Added basic responsive fix to prevent Nested Entries table from spilling outside container on mobile.

1.0-beta-6.11

  • Fixed JS error when attempting to repopulate entries between AJAX-enabled page submissions.

1.0-beta-6.10

  • Fixed issue where field ID was not respected when fetching submitted nested entries.

1.0-beta-6.9

  • Fixed issue where :sum merge tag was not working correctly on AJAX-enabled forms with multiple Nested Form fields.
  • Fixed notice generated by attempting to access $form as an object.

1.0-beta-6.8

  • Fixed security issue where arbitrary entry data could be viewed in a Nested Form field.
  • Added support for gpnf_bypass_entry_permissions filter to allow advanced users to determine if entry permissions should be bypassed when populating entries into a Nested Form field.
  • Updated gpnf_template_args docblock with addition of the "actions" property and removal of the "related_entries_link" property.

1.0-beta-6.7

  • Fixed up {Parent:__} merge tag to work with paginated child forms
  • Fixed issue where saving Nested Form field without fields in the Form Editor would cause a PHP notice/error

1.0-beta-6.6

  • Fixed issue where multiple "other" choices were added when including multiple instances of the same child form.

1.0-beta-6.5

  • Fixed issue where the Multi-file Upload field's delete icon returned a 404 when displayed in a nested form.
  • Fixed issue where adding an image to a Multi-field Upload field on a nested form did not correctly save the image when editing a child entry.

1.0-beta-6.4

  • Fixed issue where {Parent:1} did not reevaluate conditional logic when value changed.

1.0-beta-6.3

  • Fixed issue where AJAX-enabled forms still broke Nested-Forms-based calculations.

1.0-beta-6.2

  • Fixed issues with calculations and saving entries when AJAX was enabled on parent form.
  • Fixed issue where parent merge tag replacement broke routing in notifications.

1.0-beta-6.1

  • Fixed issue where parent merge tag replacement broke routing in notifications.

1.0-beta-6

  • Added support for {Parent} merge tag which allows populating child form inputs with data from the parent form.

1.0-beta-5.17

  • Updated Zapier integration so child entry feeds are always processed after parent form feed.
  • Updated field container selector to target only by id rather than element + id.

1.0-beta-5.16

  • Fixed issue where child entries were not editable/deletable when making https AJAX request from http URL.

1.0-beta-5.15

  • Fixed issue where entry total was not updated when editing via Nested Form field.

1.0-beta-5.14

  • Fixed security issues.

1.0-beta-5.13

  • Updated feed processing to only filter feeds when an entry has been created; allows feed validation to still process.

1.0-beta-5.12

  • Updated session init script to be output very late in the footer to allow footer-enqueued jQuery to load first.

1.0-beta-5.11

  • Updated name of Gravity Forms filter included in 1.0-beta-5.10 to its updated version.

1.0-beta-5.10

  • Fixed issue where updating an entry would fail to save some values depending on how conditional logic was configured.

1.0-beta-5.9

  • Fixed issue where dynamically populated and Save & Continue child entries were incorrectly prevented from loading in a Nested Form field.

1.0-beta-5.8

  • Added support for script minification.
    • Fixed issue where false entry values were output as a string (i.e. "false") rather than empty in Nested Form field.

1.0-beta-5.7

  • Fixed issue with List field values containing commas being incorrectly split up when populating child form for editing.

1.0-beta-5.6

  • Added security enhancement to better protect viewing/editing/deleting child entries on the frontend.

1.0-beta-5.5

  • Fixed additional issues related to missing modal close button caused by other themes/plugins.
  • Added 'gpnf_jquery_ui_dependencies' filter to allow 3rd parties to add their own dependencies for jQuery UI.

1.0-beta-5.4

  • Fixed issue introduced by modal close button fix in 1.0-beta-5.2.

1.0-beta-5.3

  • Added support for label placement setting on Nested Form field.

1.0-beta-5.2

  • Fixed issue where modal close button is missing when Bootstrap is loaded after jQuery UI.
  • Added support for displaying additional entry actions in the Nested Form Detail view.
  • Updated notification processing to only surpress notifications of the "form_submission" event.

1.0-beta-5

  • Fixed major issue where unorphaned child entries were deleted during orphaned entry cleanup.

1.0-beta-4.26

  • Fixed JS error that appeared when parent form contained Nested Form field with an administrative visibility.

1.0-beta-4.25

  • Updated integration with All Fields Template (v0.9.2) to better support filtering child form fields within merge tags.

1.0-beta-4.24

  • Updated get_entry_display_values() to support returning all entry display values (rather than only the selected display fields).

1.0-beta-4.23

  • Fixed issue where No Duplicates validation was enforced when editing a child entry.

1.0-beta-4.22

  • Fixed issue where when refreshing the Nested Form markup, GF was ignoring the isSelected property of choices in favor of determining the selected status based on non-existant post values.

1.0-beta-4.21

  • Fixed fatal error when attempting to delete a parent entry.

1.0-beta-4.20

  • Fixed issue where Nested Form fields were not correctly populated via User Registration Update feeds.

1.0-beta-4.19

  • Fixed issue with :sum calc modifier where one or more child entries did not contain a value for the target field ID.

1.0-beta-4.18

  • Added support for GF Zapier.

1.0-beta-4.17

  • Updated to use minimum_requirements() method for declaring minimum requirements.

1.0-beta-4.16

  • Added 'gpnf_entry_url' filter to allow filtering the entry URL when linking to child entries.
  • Fixed issue with :sum calculation modifier when target field ID was not present in child entry.

1.0-beta-4.15

  • Added support for integrating with GF Preview Submission.

1.0-beta-4.14

  • Fixed issues with translation support.

1.0-beta-4.13

  • Fixed issue where :total, :count, and :sum calculation modifiers included child entries from ALL Nested Form fields.

1.0-beta-4.12

  • Added integration with GW All Field Template to allow filtering which fields display from the nested form when displaying the Nested Form field value.
  • Added support for displaying a simple list of nested entry values when filtered for a single field.
  • Added support for 'nested-entries-simple-list' and 'nested-entry' templates.

1.0-beta-4.11

  • Fixed issue where Feed Processing field setting did not have a default value so feeds were not sent in either context (child/parent).

1.0-beta-4.10

  • Changed child form notifications to not be sent until the parent form is submitted.
  • Added 'gpnf_should_send_notification' filter.
  • Added support for populating child entries in request data for GF Webhooks Add-on.

1.0-beta-4.9

  • Nested form is now refreshed after adding or deleting entries.

1.0-beta-4.8

  • Fixed JS error caused by session initialization when parent form was AJAX-enabled.

1.0-beta-4.7

  • Refactored event reprioritization; new method lovingly dubbed, "The Event Handler".

1.0-beta-4.6

  • Added support for displaying labels instead of values for choice-based fields (preserving the ability to use values in calculations).
  • Fixed issue where ":sum" calculations were not calculated correctly on submission.
  • Fixed issue where some 3rd party add-ons caused nested form markup to be output multiple times.

1.0-beta-4.5

  • Fixed issue where only the first Nested Form field on a page had markup; template was set to require once.

1.0-beta-4.4

  • Fixed issue where View Entry links displayed outside admin resulted in 404s.

1.0-beta-4.3

  • Updated minimum required version of Gravity Forms to 2.3-beta-1.
  • Fixed issue where Nested Form JS data was not always available depending on how 3rd party scripts bound to the gform_post_render JS event.
  • Fixed issue where repositioning modal when the modal height exceeded the window height would jump up to the modal header.

1.0-beta-4.2

  • Updated field to not show up in conditional logic for other fields.

1.0-beta-4.1

  • Rewrote the GP_Template class.

1.0.beta3.12

  • Updated modal responsiveness.

1.0.beta3.11

  • Updated modal styles to be enqueued (rather than hardcoded)

1.0.beta3.9

  • Fixed issue where child entries were not populated when resuming a saved entry (via GF's Save & Continue feature)

1.0.beta3.8

  • Updated modal size to dynamically adjust to be 40 pixels smaller than the document size; primarily benefits mobile usage

1.0.beta3.7

  • Fixed issue where if multiple nested form fields were using the same child form, the first field would be updated with entries submitted from any other nested form field mapped to the same child form.

1.0.beta3.6

  • Fixed issue where Nested Form field's "Add Entry" button was being triggered when pressing enter within another field

1.0.beta3.5

  • Added JS hook for modify the arguments used to initailize the nested form modal: gpnf_modal_args
  • Added PHP hook for modifying the display value of child entry values in the parent form: gpnf_display_value
  • Miscellaneous cleanup items.

1.0.beta3.4

  • Fixed issue where child forms with conditional logic did not display when editing a child entry

1.0.beta3.3

  • Added support for repop of List fields when editing a child entry

1.0.beta3.2

  • Fixed JS error on confirmation page for AJAX-enabled forms; caused by KO bindings being applied twice

1.0.beta3.1

  • Fixed issue where non-logged-in users could not edit their nested entries
  • Fixed issue where multi-input fields were not repopulated for editing

1.0.beta3.0

  • Added support for parent forms with AJAX-enabled
  • Added translation support
  • Fixed notices generated when no nested fields have been selected via the field settings

1.0.beta2.3

  • Fixed issue where navigating to the previous page in a multi-page nested form would break the nested form submission flow (and entry was not captured in parent form)

1.0.beta2.2

  • Fixed issue with usage of jQuery.clone(); replaced with jQuery.extend().

1.0.beta2.1

  • Fix for IE8 recursive loop issue

1.0.beta2.0

  • Updated jQuery UI stylesheet URL to be protocol-less to better work with secure sites
  • Fixed several notices
  • Fixed several coding standards violations

1.0beta.1.3

  • Updated frontend to support HTML values rather than simply TEXT (allows currency symbols to be shown)
  • Updated get_entry_display_values() method to get the display value
  • Fixed error on entry detail edit where input HTML function was not called correctly resulting in a "Method GFField::input_html() must be over-ridden in a sub-class." error.
  • Removed documentation link to Terms of Service perk (will replace once real documentation is written)

1.0.beta1.2

  • Fixed issue where "Total" field did not update when nested entry was edited

1.0.beta1.1

  • Added support for displaying all child entry values in {all_fields} merge tag (previously showed comma-delimited list of child entry IDs)

1.0.alpha3.3

  • Fixed issue where gformInitDatepicker was not found and generated error

All Perks

  • GF Address Autocomplete
  • GF Advanced Calculations
  • GF Auto List Field
  • GF Auto Login
  • GF Better User Activation
  • GF Blocklist
  • GF Conditional Logic Dates
  • GF Conditional Pricing
  • GF Copy Cat
  • GF Date Time Calculator
  • GF Disable Entry Creation
  • GF Easy Passthrough
  • GF eCommerce Fields
  • GF Email Users
  • GF Entry Blocks
  • GF Expand Textareas
  • GF File Upload Pro
  • GF Inventory
  • GF Limit Checkboxes
  • GF Limit Choices
  • GF Limit Dates
  • GF Limit Submissions
  • GF Live Preview
  • GF Media Library
  • GF Multi-Page Navigation
  • GF Nested Forms
  • GF Notification Scheduler
  • GF Page Transitions
  • GF Pay Per Word
  • GF PayPal One-time Fee
  • GF Placeholder
  • GF Populate Anything
  • GF Post Content Merge Tags
  • GF Preview Submission
  • GF Price Range
  • GF QR Code
  • GF Randomizer
  • GF Read Only
  • GF Reload Form
  • GF Terms Of Service
  • GF Unique ID
  • GF Word Count

Copyright © 2022 · Powered by WordPress · Gravity Wiz LLC

  • Support
  • Affiliates
  • About
  • Sitemap
  • Terms & Conditions of Use
  • Privacy Policy
  • Cookies Policy

Get access to hundreds of Gravity Forms plugins for free!

Enter your email and receive a list of our most popular free snippets and plugins for Gravity Forms.

  • Gravity Perks
    ▼
    • Gravity Perks
    • Tutorials & Snippets
    • About
  • Support
    ▼
    • Documentation
    • Support
    • Account