Introduction
Use this action hook to create a new field setting under the Advanced tab. Useful when implementing a new custom field type that requires custom settings.
Usage
add_action( 'gform_field_advanced_settings', 'my_advanced_settings', 10, 2 );
Parameters
- $position integer
Specifies the position that the settings will be displayed. For a list of all available positions, search form_detail.php for “gform_field_advanced_settings” or review the Advanced Field Settings article.
-
$form_id integer
The ID of the form from which the entry value was submitted.
Examples
This example creates a new Advanced setting on position 50 (right after the Admin Label setting), that specifies if the field data should be encrypted. This code sample works in Gravity Forms 2.4, 2.5 and later.
add_action( 'gform_field_advanced_settings', 'my_advanced_settings', 10, 2 );
function my_advanced_settings( $position, $form_id ) {
//create settings on position 50 (right after Admin Label)
if ( $position == 50 ) {
?>
<li class="encrypt_setting field_setting">
<input type="checkbox" id="field_encrypt_value" onclick="SetFieldProperty('encryptField', this.checked);" />
<label for="field_encrypt_value" style="display:inline;">
<?php _e("Encrypt Field Value", "your_text_domain"); ?>
<?php gform_tooltip("form_field_encrypt_value") ?>
</label>
</li>
<?php
}
}
//Action to inject supporting script to the form editor page
add_action( 'gform_editor_js', 'editor_script' );
function editor_script(){
?>
<script type='text/javascript'>
//adding setting to fields of type "text"
fieldSettings.text += ", .encrypt_setting";
//binding to the load field settings event to initialize the checkbox
jQuery(document).on("gform_load_field_settings", function(event, field, form){
jQuery( '#field_encrypt_value' ).prop( 'checked', Boolean( rgar( field, 'encryptField' ) ) );
});
</script>
<?php
}
//Filter to add a new tooltip
add_filter( 'gform_tooltips', 'add_encryption_tooltips' );
function add_encryption_tooltips( $tooltips ) {
$tooltips['form_field_encrypt_value'] = "<strong>Encryption</strong>Check this box to encrypt this field's data";
return $tooltips;
}
Placement
This code can be used in the functions.php file of the active theme, a custom functions plugin, a custom add-on, or with a code snippets plugin.
See also the PHP section in this article: Where Do I Put This Code?
Source Code
This hook is located in form_detail.php.