Login Form Shortcode

Login Form Shortcode

IntroductionShortcode ActionsloginExampleParameters

Introduction
The Gravity Forms User Registration plug-in adds a couple of shortcode actions that extends the possibilities for your Gravity Forms shortcode. See also the article on the user information shortcode.
Shortcode Actions
login
Requires: User Registration Add-On.
Displays the login form.
Example
[gravityform action="login" description="false" logged_in_message="Yay! You are logged in!" registration_link_text="Register for my super awesome site" forgot_password_text="Stop forgetting your password" /]

Parameters

title
If the form title should be displayed. Defaults to true.

description
If the form title should be displayed. Defaults to false.

logged_in_avatar
If the user avatar should display for logged in users. Defaults to true.

logged_in_message
A message to display to users who are logged in.

login_redirect
Defines a URL that the user should be redirected to after they have logged in.

logout_redirect
Defines a URL that the user should be redirected to after they have logged out.

registration_link_display
If the registration link should be displayed. Defaults to true.

registration_link_text
The text to display within the registration link. Defaults to Register.

forgot_password_display
If the Forgot Password link should be displayed. Defaults to true.

forgot_password_text
The text to display within the Forgot Password link. Defaults to Forgot Password.

tabindex
Defines a custom tabindex.

List of Hooks Related to User Registration

List of Hooks Related to User Registration

SummaryWhere To Find ThemList

Summary
This document contains a quick reference list of all the hooks related to user registration actions.
Where To Find Them
Many of these are contained within the User Registration Add-On, but some may be found within Gravity Forms core or other Gravity Forms Add-Ons.
List
For more information, click the item below and it will search the document library using the hook name.
gform_activate_user
gform_admin_pre_render
gform_disable_registration
gform_shortcode_login
gform_shortcode_user
gform_site_created
gform_user_registered
gform_user_registration_add_option_group
gform_user_registration_add_option_section
gform_user_registration_check_email_pre_signup_activation
gform_user_registration_config_validation
gform_user_registration_enable_multisite_section
gform_user_registration_form_selected
gform_user_registration_login_args
gform_user_registration_login_form
gform_user_registration_login_form_description
gform_user_registration_login_form_title
gform_user_registration_login_redirect_url
gform_user_registration_meta_value
gform_user_registration_new_site_meta
gform_user_registration_prepared_value
gform_user_registration_save_config
gform_user_registration_signup_meta
gform_user_registration_update_user_id
gform_user_registration_user_data_pre_populate
gform_user_registration_user_meta_options
gform_user_registration_username
gform_user_registration_validation
gform_user_registration_validation_message
gform_user_updated
gform_username
gform_userregistration_delete_signup
gform_userregistration_feed_settings_fields
gform_user_registration_login_form

User Registration Add-On Login Widget

User Registration Add-On Login Widget

Adding the Login WidgetConfiguring the Login WidgetLogin Form OptionsNoteLogged In OptionsMerge TagsSummary

In addition to creating or updating users, the User Registration Add-On for Gravity Forms also contains a widget which will allow users to log in and register from the front-end of your site.

Adding the Login Widget

This section will show you how to add the Login widget included with the User Registration Add-On. If you already know how to activate a widget, you can continue on to the next section which contains information on the settings contained within the Login widget.

From within your WordPress admin dashboard, hover over Appearance on the left side admin menu, and click on Widgets.

Once you are on the Widget page, click on the the plus icon in the widget area of your choice. Type in login to the search bar that appears then select the Login widget.

You should now see the widget within your widget area Simply click it to access the settings for it.

Configuring the Login Widget

Immediately upon adding the Login widget, basic functionality such as logging in, logging out, and user registration will be available. Using the settings in this section, you can further customize the Login widget.

Login Form Options

SettingDescriptionLogin Redirect URLThis setting will allow you to define a custom URL that the user will be sent to upon successfully logging in when using the widget.LinksThis is a listing of links and their locations that will be displayed within the widget. By default, Register and Forgot Password? are included here. If you would like to change the text or the URL that a user will be sent to when clicking them, they can be changed here. See note.Tab Index StartThis is used to set a custom tab index. Setting a custom tab index may resolve accessibility issues if needed. As it is rather uncommon to change this, changing this value should only be done if you have a specific need for it.

Note

Additional links may also be added here. To do so, click the Add Link button for an additional field set to customize.

Logged In Options

SettingDescriptionTitleThe Title setting is used to set a custom title to the welcome message. This, as well as the Welcome Message, are used to display custom information to the user within the widget when logged in.Welcome MessageJust like the Title option above, this inserts a message within the widget for users that are logged in. This is displayed within the widget area, below the content of the Title setting.LinksSimilar to the links in the Login Form Options section, this is used to define custom links inside the widget. This differs only in that they are displayed when a user is already logged in.Login Redirect URLThis is the URL that a user will be sent to upon successfully logging out through the Login widget.Show user avatarEnabled by default, this setting will determine if the logged in user』s avatar is displayed within the widget.

Merge Tags

TagDescription{register_url}Outputs the URL to the registration page for the site. This utilizes the main User Registration Add-On setting. If no custom registration page has been defined here, it will default to the built in WordPress registration page URL.{password_url}Outputs the URL to the forgot password form that is built into WordPress.{logout_url}Outputs the URL to logout of WordPress. If a Logout Redirect URL has been configured in the widget in which it is used, it will also redirect to this URL when the user clicks on this logout link.{admin_url}Outputs the URL to the WordPress admin. When configuring links in the Login widget this can be handy for adding a link to the admin as part of the links you output via the widget.

Summary

Once finished with configuring your settings, don』t forget to click the Save button, so that your Login widget settings are active.

User Registration Change Log

User Registration Change Log

4.9 | 2021-10-214.8 | 2021-04-284.7 | 2021-01-284.6 | 2020-09-304.5 | 2020-05-144.4 | 2019-09-254.3 | 2019-08-074.2 | 2019-07-104.1 | 2019-05-154.0 | 2018-12-193.9 | 2018-01-293.8 | 2017-10-263.7 | 2017-02-203.6 | 2017-01-053.5 | 2016-11-043.4 | 2016-08-313.3 | 2016-04-193.2 | 2016-03-083.1 | 2016-01-273.0 | 2016-01-202.0.2 | 2014-12-082.0.12.0 | 2014-11-051.9 | 2014-05-291.8 | 2014-03-311.7 | 2013-09-051.6 | 2013-06-191.5 | 2013-04-011.4 | 2012-03-271.3 | 2012-02-091.2.11 | 2011-11-011.2.101.2.9 | 2011-10-031.2.81.2.71.2.6.31.2.6.21.2.6.1 | 2011-07-201.2.6 | 2011-07-161.2.51.2.41.2.31.2.21.2.1 | 2011-04-291.2 | 2011-04-271.11.0 | 2011-03-231.0.beta5.31.0.beta5.21.0.beta5.11.0.beta51.0.beta41.0.beta3.21.0.beta31.0.beta1

4.9 | 2021-10-21

Fixed a typo in the text domain.
Fixed an issue that prevented the login widget from saving in the block-based widget editor.
Fixed an issue that prevented the sorting of files in the multi-file upload field.
Fixed an issue where Multi-File Upload fields don't correctly map to user meta values.
Fixed an issue where the login form was not styled correctly when using Gravity Forms 2.5.
Fixed an issue where the {set_password_url} merge tag can output an invalid URL on multisite.
Fixed an issue where user-submitted data doesn't get saved to the profiles of users activated via BuddyPress or BuddyBoss.

4.8 | 2021-04-28

Fixed an issue with untranslated strings on the activation page.
Fixed an issue where the values of BuddyPress fields that are mapped to form fields are not saved on user activation.
Fixed a fatal error which can occur during user activation.
Fixed an issue where the add-on icon is missing on the form settings pages in Gravity Forms 2.5.

4.7 | 2021-01-28

Fixed user permissions so users with the promote_users capability can now view the Pending Activations screen.
Fixed an issue where script tags were being output above document head element.
Fixed styling issues on the Pending Activations screen in Gravity Forms 2.5.
Fixed an issue where both success and error message where displayed when activating a user from the Pending Activations screen.
Fixed a typo in the tooltip for the Password setting on the feed configuration page.
Fixed an issue where MySQL throws an error on Entry Detail and Pending Activations screens.
Fixed an issue where the login form does not display non-standard authentication errors.
Fixed a fatal error which occurs on form population if the Consent field is mapped on the Update feed and the entry which last updated or created the user has been deleted.

4.6 | 2020-09-30

Added translations for Japanese.
Added support for Gravity Forms 2.5.
Updated the activation page query string to use the "gfur_activation" parameter instead of "page" to fix an issue with WordPress 5.5 where a 404 not found error occurs. Existing activation links will automatically redirect to the new page.
Fixed an issue where the password can fail validation on login if the user object is cached when the user is created and feed processing is delayed by the user activation feature or a payment add-on such as PayPal Standard.
Fixed an issue where the set password URL included in the notification sent on the user is activated event becomes invalid when the user is activated via the front-end activation page.
Fixed a validation error which occurs when using the update type feed and the submitted email address uses a different case to the users current email.
Fixed an issue that prevents the dropdown to select notification type in the "Send Email?" setting of a create user feed from displaying in certain situations.
Fixed an issue during user update for passwords containing quotes which results in a password validation error on login.
Fixed an issue during user creation for passwords containing quotes which results in a password validation error on login.
Fixed an issue where feed processing aborts early when the activation feature is enabled and the gform_user_registration_validation and gform_user_registration_check_email_pre_signup_activation filters are being used to allow multiple accounts to use the same email address.

4.5 | 2020-05-14

Added security enhancements.
Added translations for Hebrew, Hindi, and Turkish.
Added gform_user_registration_pending_activation_expiration filter that allows the expiration period for the pending activation users to be overridden.
Added support for sending notifications when the pending activation is deleted.
Updated the settings on the feed configuration page. See Creating a Feed for the User Registration Add-On for the available settings.
Updated the new user emails to be sent by wp_new_user_notification() instead of gf_new_user_notification().
Updated the default activation page template.
Updated Javascript files, stylesheets to use minified versions.
Fixed an issue introduced in v4.4.6 where WordPress does not send the new user email for new feeds.
Fixed a database error on multisite installations related to the WordPress signups table.
Fixed a notice with PHP 7.4 when creating a new feed.
Fixed a PHP notice being displayed when a custom meta value is not a string.
Fixed a PHP compatibility warning in PHP 7.1+ when getting the set password URL due to using $this within a plain function.

4.4 | 2019-09-25

Added support for Stripe Checkout to display the "User Registration Options" section in the feed.
Fixed an issue where a site cannot be updated when the subscription is canceled on a multisite install.
Fixed a PHP warning which occurs when an invalid form ID is used with the gravityform shortcode.

4.3 | 2019-08-07

Added security enhancements.

4.2 | 2019-07-10

Added security enhancements.

4.1 | 2019-05-15

Added gform_userregistration_associate_entry_with_user filter to add change if newly created user should be set as entry creator.
Updated minimum Gravity Forms version to 2.2.6.
Updated feed settings to display Set Post Author setting when form has Advanced Post Creation feeds.
Updated Login widget to set logout redirect to current page when logout redirect URL setting is left empty.
Fixed entry not being associated to newly created user when submitter is not logged in.
Fixed an issue with pending activation for duplicate emails.
Fixed PHP notice after Gravity Form 2.4.7 adding tab capabilities check.
Fixed an issue preventing the personal data retention policy from deleting entries.
Fixed an issue that the consent field didn't reflect user metadata correctly.
Fixed an issue populating checkbox fields from BuddyPress checkboxes types fields when processing the update type feed on form display.
Fixed issues processing multi-select fields when mapped to BuddyPress multi select box fields during submission for both feed types and on form display for the update type feed.
Fixed a PHP 7.3 warning when the update type feed is populating the form and it contains a file upload field.

4.0 | 2018-12-19

Added support for data retention in Gravity Forms 2.4.
Fixed an issue with login widget when using special characters in password.
Fixed an issue where the username, email, and password fields may not be validated on multi-page forms if the feed conditional logic is not met when the page containing those fields is submitted.
Fixed a deprecated function notice with PHP 7.2 when processing update type feeds on form display.
Fixed BuddyPress overriding the role after the user is created.
Fixed text domains for string translations.
Fixed the user_nicename being saved to the _usermeta table instead of the _users table.
Fixed an issue with the login form submission when the password contains the less than character.
Fixed a fatal error which occurred if the GFFormDisplay class is not available when getting the login form HTML.
Fixed an issue introduced in 3.9 which prevents the Pending Activations from being listed when the database tables are utf8 encoded instead of the newer utf8mb4.

3.9 | 2018-01-29

Added support for Gravity Forms 2.3.
Added GPL to the plugin header.
Added the "Preserve current email" choice to the email address mapping drop down on the update type feed.
Updated URIs in plugin header to use https.
Updated username validation message to match WordPress' equivalent validation message.
Updated strings in pending activations so they could be translated.
Fixed an issue which can prevent pending activations from being listed due to collation mismatch after installing the add-on after upgrading MySQL from 5.5 to 5.6.
Fixed a PHP warning related to the login form/widget logged in/out links.

3.8 | 2017-10-26

Added gform_userregistration_login_form filter to allow modifying the login form object.
Added gf_login_form class to login form wrapper.
Added validation error message to login form when an invalid email address is used.
Updated user meta shortcode to retrieve multiple user meta items when output is set to CSV or list.
Fixed multi-input field not being populated, in some situations, when processing update type feeds on form display.
Fixed issue where $user_id returned by gform_user_registration_update_user_id filter was not respected when updating a user.
Fixed a fatal error which could occur with PHP 7.1 when using a login widget without logged in and/or logged out links.
Fixed a fatal error which can occur when getting the BuddyPress fields.
Fixed a notice which could occur with PHP 7.1 during update type feed processing on form display when populating Checkbox fields.
Fixed an issue populating Multi Select fields created with Gravity Forms 2.2+ when processing update type feeds on form display.

3.7 | 2017-02-20

Added security enhancements. Credit: Fletcher Horton - Horton's Art LLC.
Fixed a PHP warning when populating a form field using the value from a BuddyPress datebox type field.
Renamed the function hooked to the gform_merge_tags filter to prevent conflicts with other add-ons and custom code snippets.
Updated gf_user_registration_login_form() to allow for login form arguments to be passed directly through a parameter.

3.6 | 2017-01-05

Added logging of BuddyPress field processing.
Fixed an issue where the number field value may not use the format configured on the field.
Fixed fatal error on main settings page when running PHP 7.1.
Fixed strings for translations.
Fixed an issue with the markup for the login widgets logged in message.

3.5 | 2016-11-04

Added support for the {set_password_url} merge tag.
Updated 'User activation' notification event label to 'User is pending activation'.
Updated Pending Activations table to be responsive.
Updated to use a meta box to include the activate user button on the entry detail with Gravity Forms 2.0+.
Fixed a timing issue with the inclusion of the GF_Field_Username class which in some situations caused the username field to be initialized in the form object using the basic GF_Field object resulting in the field input being missing when the form was rendered.
Fixed feed not being passed through the gform_addon_pre_process_feeds filters in some situations.
Fixed a PHP notice which could occur when an update type feed populates checkbox type fields with values stored in ACF checkboxes.
Fixed an issue with the Login button which prevented it being translated.
Fixed an issue with the custom registration page redirect.
Fixed an issue with the default logged in message for the login shortcode.

3.4 | 2016-08-31

Added additional logging statements.
Added the gform_user_registration_user_meta_options filter to allow the options for the "Other User Meta" group in the User Meta setting on the settings page to be set before running the query against the usermeta table for existing meta keys. If the return value is not empty then the query for existing meta keys will not run.
Updated German (de_DE) translation to fix an issue in Pending Activations page when Deutsch language is selected in WP settings due to incorrect usage of double quotes in the translation file.
Fixed issue when trying to hide title, description or logged in avatar with the login shortcode.
Fixed issue when including the deprecated.php file on some installations.
Fixed a typo in the capability for the pending activations page under the Users menu.
Fixed fatal error which could occur if the BP_XProfile_Field class already exists.
Fixed fatal error which could occur if the BP_XProfile_Group class already exists.
Fixed an issue with the activation url if the WordPress Address and Site Address URLs differ.
Fixed notice generated during validation when form did not have a password field
Fixed issue with password validation.
Fixed GF_Field array access/object notation notices with Gravity Forms 2.0.

3.3 | 2016-04-19

Added support for redirect_to query parameter for login/logout form.
Added German translation. Credit: Dominik Horn - netzstrategen.
Updated wp_new_user_notification() to be gf_new_user_notification() to avoid issues where users are attempting to override the same function. Users wishing to override this function can do so by defining their own version in a theme or plugin.
Updated login widget interface.
Updated login widget editor to restore previously active tab after save.
Updated some strings on the feed settings page.
Updated 'Add Link' string in Login widget to be translatable.
Updated Chinese (China) translation. Credit: Edi Michael.
Updated Spanish (es_ES) translation.
Updated login widget to not use boolval().
Fixed an issue with the PayPal integration with Gravity Forms 2.0.
Fixed an issue where a PHP notice would appear when enqueuing scripts when not logged in.
Fixed issue with login redirect URL not populating properly.
Fixed an issue populating the Checkbox field when processing the update feed on form render.
Fixed fatal error when using "user" shortcode in list output mode and meta value is not an array.
Fixed textdomain for some strings.

3.2 | 2016-03-08

Added Chinese (China, Hong Kong, and Taiwan) translations. Credit: Jason Hoi.
Added feed settings option to send user email when site is created.
Added gform_user_registration_login_args filter to modify all login form arguments.
Added gform_user_registration_login_form_title filter to modify login form title.
Added gform_user_registration_login_form_description filter to modify login form description.
Added gform_user_registration_login_redirect_url filter to modify redirect url after success login.
Added "Nickname" option to User Settings feed settings.
Added notification events: Site is created, User activation, User is activated, User is registered, User is updated.
Added "Preserve existing Display Name" option to update user feeds.
Added support for feed duplication.
Added support for using a custom link as the custom registration page.
Added user login via widget.
Added "user" action to Gravity Forms shortcode to retrieve user object and meta data (e.g. [gravityform action="user" key="display_name"]).
Added "Username" field to Advanced Fields.
Added additional logging statements.
Added support for the {activation_url} merge tag.
Fixed a fatal error which could occur on the pending activations page when attempting to display the activation error message.
Fixed an issue pre-populating the List field when processing the update feed on form render.
Fixed an issue where the post author was not set when the entry was marked as not spam.
Fixed an issue which could prevent user activation for users created by the pre-framework version if conditional logic is configured on the feeds.
Fixed an issue with BuddyPress overriding the activation emails which prevented the add-on handling user creation when the activation link was used.
Fixed an issue with the entry id stored in the user meta being overridden when an update feed is processed.
Fixed an issue with the post author not being set.
Updated feed action feed settings field to use visual radio buttons.
Updated feed settings for PayPal Standard to only display once the transaction type is selected and to only display the update user and site settings when the subscription type is selected.
Updated user role feed settings field to be a required field.
Updated wp_new_user_notification() to support logging the result from wp_mail().

3.1 | 2016-01-27

Updated processing of post category field value to use object notation.
Updated logging around processing of user meta.
Fixed an issue with the multi select field value when saving it to the user meta.
Fixed a fatal error which could occur with PHP versions older than 5.3 when including the deprecated functions file.
Fixed an issue with the capabilities.
Fixed an issue with the choices for display name setting not being translatable.

3.0 | 2016-01-20

Added integration with Add-On Framework.
Added new filter gform_userregistration_feed_settings_fields for modifying UR feed settings.
Added gform_user_registration_check_email_pre_signup_activation filter for allowing the user to disable the check for an email being already used by a registered user.
*add_filter( 'gform_user_registration_check_email_pre_signup_activation', '__return_false' );*
Added gform_userregistration_delete_signup hook to allow custom actions to be performed when pending activations are deleted.
add_action( 'gform_userregistration_delete_signup', function( $signup ) {
// do something
} );
Usage example here
Updated Spanish (es_ES) translation.
Updated update feed so that email isn't required.
Updated maybe_prepopulate_form() and handle_existing_images_submission() so the gform_user_registration_update_user_id filter can be used to override which user is used to populate the form.
Fixed an issue which could prevent the user email being sent when manually adding a user via Users > Add New.
Fixed a fatal error which could occur when processing BuddyPress data if the mapped field was a not a form field.
Fixed a fatal error which could occur when processing uploads if the mapped field was a not a form field.
Fixed issue where activation notification was not sent for for new users and new sites in WP 4.4
Fixed an issue with passwords containing quotes.
Fixed issue where password wasn't getting sent via email.
Fixed an issue with the pending activations page including blank rows for signups which do not have an associated GF entry.
Fixed an issue with username and email validation not taking pending activations into account.
Fixed issue where BuddyPress functions were triggered when BuddyPress was not active.

2.0.2 | 2014-12-08

Fixed issue where date fields were not mapped correctly in newer versions of BuddyPress.

2.0.1

Fixed typo in a translation string in userregistration.php.
Updated POT file.

2.0 | 2014-11-05

Added support for updating file upload fields mapped to BuddyPress image fields (available via BP add-on).
Added additional logging statements.
Updated pending activation so that it doesn't rely on the password being in the entry.
Updated POT file.
Updated plugin updated method so that it takes advantage of proxy manager to get around the blacklisted IP issue.
Fixed issue where pending activations were not sorted correctly.
Fixed update feeds in Gravity Forms 1.9.
Fixed issue where BuddyPress field visibility was ignored.
Fixed warning message on plugin's page.
Fixed notice when 'create_site' feed meta was not set.
Fixed issue where "Simple" type Name fields did not map to user meta correctly.
Fixed issue where data pulled from BuddyPress was not always correctly matched since the HTML entities were already encoded.
Fixed issue whith PayPal integration where users were not getting created when payment was manually being marked as Approved on the entry detail page.
Fixed notice thrown when updating BuddyPress Last Activity meta; updated to use new version.
Fixed issue where the upgrade class wasn't included which caused ManageWP to not work with add-on.
Fixed notices thrown in the downgrade_paypal_user function.

1.9 | 2014-05-29

Added gform_user_registration_new_site_meta filter for filtering the meta used to create a new site
add_filter( 'gform_user_registration_new_site_meta', 'add_blog_template', 10, 6 );
function add_blog_template( $site_meta, $form, $entry, $feed, $user_id, $is_update_feed ) {
$signup_meta['blog_template'] = 1;
return $signup_meta;
}
Added "Preserve current role" option for "Current Site Role" setting.
Added gform_user_registration_signup_meta filter for filtering the signup meta
add_filter( 'gform_user_registration_signup_meta', 'add_blog_template', 10, 4 );
function add_blog_template( $signup_meta, $form, $entry, $feed ) {
$signup_meta['blog_template'] = 1;
return $signup_meta;
}
Added current user object to wpmu_validate_blog_signup() call to allow registering sites with the same name as the current user.
Fixed the functions used by the mwp_premium_update_notification and mwp_premium_perform_update hooks so that the new_version element in the array returns the add-on's version instead of Gravity Forms.
Fixed issue where signups table on single site installs failed to update correctly when promoting site to multisite.
Fixed issue where activation emails were sent even though manual activation was enabled.
Fixed strict notice for Non-static method GFUserSignups::install_signups().

1.8 | 2014-03-31

Added more debug statements for logging.
Added logging support and some initial debug statements.
Updated two strings in activate.php to match their equivalents in wp-activate.php (as of WP 1.8.1).
Updated signup activation to check if email address is already in use and return a message indicating such.
Updated all places where RGUserUpgrade class was manually included to use new GFUser::include_upgrade_library() method.
Fixed notice with missing variable $set_post_author.
Fixed issue on single site installs where activation email title and from name defaulted to "WordPress".
Fixed issue on Update form where pre-population didn't always work when a value was set to zero.
Fixed issue where RGUserUpgrade class was called but not included.
Fixed issue where single column list fields were not updating correctly on Update feeds.
Fixed issue where deprecated functions were used in activation process.
Fixed issue in Update feed on multi-site where email address said to already be used.

1.7 | 2013-09-05

Fixed issue with invalid site domain and path when creating a new site.
Fixed issue with email activation link displaying errors when mapping BBPress fields.
Fixed issue where $base global variable in wp-config.php may not have the trailing slash, causing the site url created to be bad.
Fixed bug where PayPal integration caused user to be registered regardless of being set to manual/email activation.

1.6 | 2013-06-19

Updated automatic upgrade so that it caches remote requests for 12 hours (even on plugin's page).
Updated multisite username and email validation to only apply if the correct page is being validated.
Updated to allow mapping to POST fields for Update User feed.
Fixed issue with form action on activate.php when invalid activation key provided.
Fixed issue with display name not being set correctly on an create feed.
Fixed issue were BP on single site installs was overwriting standard user meta fields (ie first name, last name, nicename).
Fixed issue where email validation allowed update feeds to use already used email addresses.
Added better support for file uploads on forms with update feeds.
Fixed issue where multisite validation on Update feeds generated error when using existing email.

1.5 | 2013-04-01

Added support for custom registration page for multi-site installs.
Fixed link location for drop down on Pending Activations page which takes user to view All pending or form-specific pending.
Fixed issue where All pending activations was returning no records.
Fixed issue where usernames with spaces were not displaying in pending activation table.
Added "back to list" link on successful activation on Pending Activations page.
Updated Pending Activations table to only show form column when viewing All Pending Activations.
Updated UI to remove tabs.
Fixed issue where update_user() function was not correctly saving the user's email.
Fixed errors when populating an update fields with values containing single quotes.
Added support for specifying user activation type (manual, by email).
Updated roles drop down on feed page to order by a custom sort (subscriber first).
Fixed issue when updating user's website meta on an update feed.
Fixed issue with mapping category fields to BuddyPress.
Fixed error on update feed form when Buddy Press is uninstalled.
Fixed issue with checkboxes not being saved correctly when unchecked from an update feed.
Fixed issue with date fields not being formatted correctly when populating fields in an update feed.
Fixed issue with plugin-upgrade.php where failed remote response generated several notices.
Added support for saving processed config in entry meta and retrieving this from get_active_config() function.
Fixed issue where multiple file upload fields were not be populated correctly (powered by update feed).
BP functions bound to gform_user_registered were not being bound in the admin as the gform_user_registered hook was not previously fired in the admin (now fires when manually activating a pending activation).
Fixed issue where "wp_" prefix was being used instead of "$wpdb->prefix" Busted!
refactored form population for update feeds.
added support for list fields for update feeds.
fixed issue with date field population for update feeds.
Fixed issue with hardcoded table prefix.
Fixed issue with AJAX call when admin is configured to force SSL.
Fixed issue where Gravity Forms was being required and failing to find plugin.
Fixed issue where values being populated back into form for update feeds were not escaping single quotes which caused errors.
Fixed issue where unescaped single quotes were causing issues on feed editor.
Fixed issue where custom meta fields with 0 as a value weren't saving to the database.
Fixed notices when form inputs array doesn't exist which caused AJAX spinner to remain and no form fields were displayed.
fixed compatability issue with BP 1.6 where BP profile function is no longer available.
added "gform_disable_registration" hook to allow add-ons to prevent User Registration from registering/updating a user.
fixed issue where using wp_get_current_user() function was failing to update users when wait for payment option was checked.
fixed issue where "Pending Activations" link displayed in feed actions for Update feeds.
fixed issue where "Send Email?" option was displaying for Update feeds.
fixed issue where "Preserve current role" option was not preserving user's role for new feeds.
fixed issue were active status was not taken into account when retrieving update feed.
Fixed issue where new feed options were not displaying immediately.
Added support for displaying all user meta keys in feed meta key drop downs.
Fixed UI to read "Action" instead of "Feed Type".
Added pending activation link to entry detail page.
Added support for multiple feeds per form.
Added support for user activation on a per feed basis.
Added support for "update" feed types.
Added new conditional logic options (greater than, less than, contains starts with, ends with) and support for other conditional fields.
Fixed notices.

1.4 | 2012-03-27

Fixed typo.
Fixed issue where users were not visible in the BP member directory.
Added support for displaying user registration notice in activity feed.

1.3 | 2012-02-09

Fixed issue when Authorize.net and PayPal feeds were configured on the same form. The PayPal feed was being used sometimes even though the PayPal condition wasn't met.
Fixed issue where inactive feeds were still being processed.
Added several additional parameters to the "gform_username" hook.
Fixed issue where translation files were only being loaded for admin.
Fixed several notices with BuddyPress integration.
Updated function for adding user properties to prevent removal of password.
Added gform_site_created hook which triggers after a site has been created.
Updated functionality to add website user property correctly.
Updated PayPal integration to support multiple PayPal feeds with the same form.
Fixed notices on the PayPal Transaction Settings for the User Registration section.
Fixed issue where RG_CURRENT_PAGE constant was not available when GF is deactivated.
Added option to feed to allow user to specify the display name of the created user.
Updated code in various places to be cleaner and more efficient.
Added option to select role of new user on new site.
Added option to select role of new user on existing site.
Updated the "Custom Registration Page" functionality to also override BP Register page.
Fixed several PHP notices.
Fixed issue where validation was being processed regardless of a registration condition.
Fixed issue where $entry object was not being passed when checking if registration condition was met.
Fixed issue where GF was calling "gform_post_submission" hook prior to add-on tying function to it.

1.2.11 | 2011-11-01

Fixed issue where password was not included on New Site Creation email.

1.2.10

Updated registration_met() function to retrieve submitted value from the lead (rather than $_POST) to be compatible with PayPal Add-On.

1.2.9 | 2011-10-03

Fixed issue where empty array values for checkboxes and multiselect fields were being displayed as part of the BP profile data.

1.2.8

Fixed issue where erroneous fields with empty inputs array were not displaying in feed fields drop down.

1.2.7

Updated custom_registration_page() function to no longer user parse_url() php function.

1.2.6.3

Users are not created if entry is marked as spam.
Marking an entry as not spam will create the user.

1.2.6.2

Updated how the BuddyPress profile data table name is retrieved.
Updated custom_registration_page() function to parse more complex URLs.

1.2.6.1 | 2011-07-20

Updated "Custom Registration Page" functionality; when activated, accessing WP's default registration page will redirect user to specified page.

1.2.6 | 2011-07-16

Updated all localization strings to ensure same domain.
Recreated localization POT file.
Updated validation to validate regardless if the registration condition is met.

1.2.5

Added cleanup routine to make sure user meta values are not stored as arrays.

1.2.4

Added new filter "gform_username" to dynamically assign a username.
add_filter('gform_username', 'auto_username');
function auto_username($username){
$username = rgpost('input_2_3') . rgpost('input_2_6');
return $username;
}

1.2.3

Escaped javascript localization strings.

1.2.2

Add new option/functionality to override WP's default registration page with a custom page.
Require BP file in get_buddypress_fields() for users who have BP active but not setup.

1.2.1 | 2011-04-29

Updated 'Email Address' field dropdown to also pull custom fields that are set to the Email input type.
Updated is_root_site() function to more reliably determine if the current blog is the root site's blog.
Fixed several notices on User Registration multisite options.

1.2 | 2011-04-27

Fixed issue with localization.
Updated UI to support longer translation verbiage.

1.1

Fixed issue where all User Registration options were displaying for PayPal Feeds even when no User Registration Feed existed for the selected form.
Fixed issue where User Registration options were not available on a PayPal Feed until after saving the PayPal Feed was saved.
Feed password field now defaults to a form password field (if available).

1.0 | 2011-03-23

Updated version to 1.0.

1.0.beta5.3

Updated reference to gforms_paypal_save_config to use the renamed hook: gform_paypal_save_config.
Localized add-on.
Added gravityformsuserregistration.pot file.

1.0.beta5.2

Added hook to allow User Registration validation messages to be updated.
Example:
add_filter("gform_user_registration_validation_message", "update_validation_msgs", 10, 2);

function update_validation_msgs($message, $form){

if($message == 'This username is already registered')
$message = 'We're sorry, this username is already registered. Try submitting with a different username.';

return $message;
}

1.0.beta5.1

Updated gf_create_user() code to abort user registration if username already exists; beneficial to prevent existing user data being overwritten if username validation is overriden.

1.0.beta5

Added support for all BP field types.
Rewrote function to better retrieve values from the $_POST and $entry object.

1.0.beta4

Fixed validation issue for multi-page forms where the site address MU registration field was being validated regardless of current page.
Fixed "Cancel" button on Edit page to return the user to the List page.
Update multisite registration validation to check if site name (domain) already exists.

1.0.beta3.2

Fixed IE issue where selecting a form on the PayPal add-on was generating an error when no User Registration feeds existed.

1.0.beta3

Added support for creating MultiSite with user registration.
Fixed issue where MultiSite was failing to return validation error for spaces in domain name.
Disabled MultiSite options on User Registration feed view for child sites.

1.0.beta1

Updated database name to be consistent with other Gravity Form Add-Ons.
Updated permission required to view User Registration menu.

Using Calculations

Using Calculations

IntroductionCreating a calculation formulaNumber Formatting RulesTerminologyRules

Introduction

Calculations are available within a field when using a Number field with calculation enabled, or a Product field set to Field Type of Calculation. In this article, we will show you how to set up a calculation in a Number field, as well as go over some important rules on using number fields in calculations as well as the rules supporting different decimal formats.

Note: The Total field type cannot be used within calculations. Within this article, only Number fields are used.

You perform all the following steps from within the Form Editor.

Creating a calculation formula

We will generate a simple example of a calculation using two Number fields. 

Add 2 different number fields and name them First Number and Second Number.Save your form, it is important to do this so the newly added fields are available when setting up the calculation formula in later steps.Add a third Number field which will handle the result of the calculation. Name it Total.  Ensure that this field is positioned after the first two Number fields.Access the field settings of the Total field.Select the Enable Calculation checkbox to enable this field to be populated based on a calculation result. Once the Enable Calculation checkbox is selected, additional options will appear below it. See image (A) below. Access the field settings of the Total field. Click the button Insert Merge Tag and select your first field in the calculation. Note that only fields valid for use in calculations will be listed. See image (B) below.Add a mathematical operator. In this case, simple addition (+).Insert the Second Number field to complete the calculation. Check the calculation by clicking Validate Formula. If it says that your calculation is invalid, go back and take another look. See image (C) below.Your calculation is all set. Be sure you Save your form.

(A) Enabling calculations within your Number field titled 「Total」.

(B) Using a Merge Tag to insert your operands.

(C) Final formula

Number Formatting Rules

This section explains how to format numbers properly for product pricing and calculations.

Terminology

Decimal dot format: Number format where a dot is used as the decimal separator. Example: 5.20Decimal comma format: Number format where a comma is used as a decimal separator. Example: 5,20

Rules

When creating a calculation formula, all numbers manually entered in the formula must:

Be entered in decimal dot format**, and
Use a preceding 0 if required. Example: 0.2 is valid, 0,2 is not valid, .2 is not valid.

When entering number fields on a form on the front end of the site, users must enter the format configured for that number field, even if that field is being used in a calculation that uses a different number format.When using drop down or checkbox field types in a formula, the values must be formatted with the same format as the field containing the formula.For example, if you have a calculated number field in decimal comma format (i.e. 9.999,99) that has calculation formula that references a drop down field, the values of the drop down field must be also be in decimal comma format.If the number field is configured with a 「Currency」 Number Format, the drop down values must be formatted with the same decimal separator as the currency.When using a quantity drop down field to specify fractional values (i.e. 5.5), those numbers must be formatted with the same decimal separator as the site』s currency.​​​​​​Fields referenced in a calculation formula (1) must be positioned before the calculation field, and (2) must not be hidden by logic. This is because calculations are rerun during submission using saved values, and if the field hasn』t been saved yet or has been ignored due to logic at form submission, it won』t have a value available for the calculation, leaving the result either incorrect or empty.

Including and Using Entry Meta with the Add-On Framework

Including and Using Entry Meta with the Add-On Framework

Introductionget_entry_meta()PropertiesExampleSaving a value to the Entry Meta keyAccessing the Entry Meta ValueDeleting the Entry Meta Value

Introduction
Entry meta data is custom data that』s stored and retrieved along with the entry object. For example, entry meta data may contain the results of a calculation made at the time of the entry submission, or a unique id for a subscriber returned by a mailing list service.
Any add-on which extends GFAddon, GFFeedAddOn, or GFPaymentAddOn can add custom entry meta.
get_entry_meta()
To add entry meta, override the get_entry_meta() function and return an associative array with the properties for each meta key your add-on is including.
Properties

label string
The label for the entry meta item.

is_numeric boolean
Used for sorting.

is_default_column boolean
Default columns appear in the entry list by default. Otherwise the user has to edit the columns and select the entry meta from the list.

update_entry_meta_callback string
The function that should be called when updating this entry meta value.

filter array
An array containing the configuration for the filter used on the results pages, the entry list search, and export entries page.
The array should contain one element: operators. e.g. 『operators』 => array( 『is』, 『isnot』, 『>』, 『<『 ) Example public function get_entry_meta( $entry_meta, $form_id ) { $entry_meta['simpleaddon_contact_id'] = array( 'label' => 'Simple Add-On Contact ID',
'is_numeric' => true,
'is_default_column' => true,
'update_entry_meta_callback' => array( $this, 'update_entry_meta' ),
'filter' => array(
'operators' => array( 'is', 'isnot', '>', '<' ) ) ); return $entry_meta; } public function update_entry_meta( $key, $lead, $form ) { $return ''; // return the value of the entry meta } Saving a value to the Entry Meta key In this example we are using gform_update_meta() to store the contact id returned by the third-party service during feed processing in the entry meta. public function process_feed( $feed, $entry, $form ) { $contact_id = $this->create_contact( $feed, $entry, $form );
gform_update_meta( $entry['id'], 'simpleaddon_contact_id', $contact_id );
$entry['simpleaddon_contact_id'] = $contact_id;

return $entry;
}

Accessing the Entry Meta Value
If you have access to the Entry Object then you could access the meta value like so:
$contact_id = rgar( $entry, 'simpleaddon_contact_id' );

If you don』t have access to the Entry Object but you do have the entry id then you can access the value by using gform_get_meta() like so:
$contact_id = gform_get_meta( $entry_id, 'simpleaddon_contact_id' );

Deleting the Entry Meta Value
The gform_delete_meta() function can be used to delete the meta value from the entry like so:
gform_delete_meta( $entry_id, 'simpleaddon_contact_id' );

Translating Gravity Forms (or an add-on) using Loco Translate

Translating Gravity Forms (or an add-on) using Loco Translate

Getting StartedCreating a New TranslationUpdating an Existing TranslationTranslate those StringsShare Your TranslationOverride bundled Translation

In this article, we explain how you can use the Loco Translate WordPress plugin to create and update translations for Gravity Forms (or an add-on). Loco also has an free online PO file editor but this article focuses on the WordPress plugin.
Getting Started

Loco Translate is available from the WordPress Plugin Directory and can be installed directly from the Plugins > Add New page of your WordPress Admin.

Once installed and activated you will find a new Loco Translate menu item has been added. Here you will find a list of all your installed themes and plugins, including their available translations.

Creating a New Translation

To add a translation for a new language click the New language link in the Translations (PO) column of the plugin you want to translate.

On the New PO file tab select the language from the drop down of common languages, or enter the language ISO code.

You may also be offered the ability to choose where the translation will be stored. To ensure your translation is not lost during updates we would recommend selecting the global languages directory.

Click the Start Translating button.

See Translate those Strings

Updating an Existing Translation

On the Loco Translate packages tab, in the Translations (PO) column, click on the translation you want to update.

To pull in any new strings which need translating, and remove any translations for strings which no longer exist in Gravity Forms (or add-on) click the Sync button in the editor toolbar.

See Translate those Strings

Translate those Strings

On the editor screen you』ll be presented with a list of all the strings available for translating. Untranslated strings are shown in bold blue.
Select the string you want to translate from the list at the top and then enter your translation in the pane at the bottom.
Translate as many or as few strings as you like.

The newly translated string will have a star icon to the left of the string indicating that the changes have yet to be saved.

To compile the translation MO file for use by Gravity Forms (or add-on) click the Save button in the toolbar above the list of strings.

Share Your Translation

On the Loco Translate editor screen download the translation PO and MO files by using the buttons in the toolbar.

Open a support ticket or use our Contact Us form and let us know you would like to contribute your translations. We』ll reply informing you how best to send them to us. Once we have your files we will get them included in the next plugin update and on the Translations page of the support site. We will also credit you in the change log and on the Translations page.

Override bundled Translation
If for any reason you want to override bundled translation for your language with your own customized translation file, just use a FTP client to copy your .mo file to your site /wp-content/languages/gravityforms/
This will make Gravity Forms to use your translation file as first option. If a string is not included in your translation file, it will use the translation from the bundled translation file.

Translating Gravity Forms (or an add-on) using Poedit

Translating Gravity Forms (or an add-on) using Poedit

Getting StartedCreating a New TranslationUpdating an Existing TranslationTranslate those StringsShare Your TranslationOverride bundled Translation

In this article, we explain how you can use Poedit, the Gettext translations editor, to create and update translations for Gravity Forms (or an add-on).
Getting Started

Download the latest build of Gravity Forms or the Add-On to be translated.

Extract the ZIP.

Visit https://poedit.net/ and download a copy of Poedit. Downloads are available for both Windows and OS X.

Install and open Poedit.

Creating a New Translation

On the Welcome to Poedit screen click the Create new translation button.

Select the .pot file in the languages directory of the plugin you extracted earlier then click Open.

Select the language of the translation.

See Translate those Strings

Save the new translation by going to File > Save. The language ISO code should already be populated. Prefix that with the plugin slug e.g. gravityformscapsulecrm. Choose where the file should be saved then click Save.

Updating an Existing Translation

Download the .po file for the translation being updated from the Translations page.

On the Welcome to Poedit screen click the Edit a translation button.

Select the .po file for the translation you want to edit then click Open.

To pull in any new strings which need translating, and remove any translations for strings which no longer exist in Gravity Forms (or add-on) go to Catalog > Update from POT file. Select the .pot file in the languages directory of the plugin you extracted earlier then click Open.

See Translate those Strings

Save the updated translation by going to File > Save.

Translate those Strings

On the editor screen you』ll be presented with a list of all the strings available for translating. Untranslated strings are shown in bold.
Select the string you want to translate from the list at the top and then enter your translation in the pane at the bottom.
Poedit may also offer translation suggestions in the pane on the right. Click on the translation to use it.
Translate as many or as few strings as you like.

Share Your Translation

To compile the translation MO file for use by Gravity Forms (or add-on) go to File > Compile to MO. Choose where the file should be saved then click Save.

Open a support ticket or use our Contact Us form and let us know you would like to contribute your translations. We』ll reply informing you how best to send them to us. Once we have your files we will get them included in the next plugin update and on the Translations page of the support site. We will also credit you in the change log and on the Translations page.

Override bundled Translation
If for any reason you want to override bundled translation for your language with your own customized translation file, just use a FTP client to copy your .mo file to your site /wp-content/languages/gravityforms/
This will make Gravity Forms to use your translation file as first option. If a string is not included in your translation file, it will use the translation from the bundled translation file.

Trash

Trash

Unwanted entries are not deleted immediately. Instead, these entries are moved to the Trash. An entry can only be permanently deleted after it has been moved to the Trash.

See this article for information on trash and other actions you can perform on entries.

Important Note: When an entry is permanently deleted, all files associated with this entry will also be deleted.

Trello Change Log

Trello Change Log

2.0 | 2021-07-071.4 | 2020-09-091.3 | 2020-05-051.21.11.0

2.0 | 2021-07-07

Updated authentication method for enhanced security. Important: Manual re-authentication in the add-on suggested.
Fixed an issue where the Add-on icon is missing on the Form Settings page for Gravity Forms 2.5.
Deprecated old authentication method. Authentication will continue to work until removed.

1.4 | 2020-09-09

Added support for Gravity Forms 2.5.

1.3 | 2020-05-05

Added security enhancements.
Added translations for Hebrew, Hindi, Japanese, and Turkish.
Updated Javascript files, stylesheets to use minified versions.
Updated labels to be stored by ID instead of by color.
Fixed error message for when a file cannot be attached to a card.
Fixed issue of wrong variable being used in upgrade function.

1.2

Fixed fatal error which could occur if no boards are returned when initializing the API.

1.1

Added support for delaying feed processing until payment by PayPal Standard is successfully completed.
Fixed an issue where a due date of Jan 1, 1970 was set on the card if the mapped date field was empty.

1.0

It's all new!