Using Gravity Forms ‘gform_advancedpostcreation_taxonomy_mapping_field’ PHP filter

The gform_advancedpostcreation_taxonomy_mapping_field filter allows users to modify which field is used when looking up terms via get_term_by(). Defaults to name, but can be any of: ‘slug’, ‘name’, ‘term_id’ (or ‘id’, ‘ID’), or ‘term_taxonomy_id’.

Usage

A generic example of how to use the filter:

add_filter('gform_advancedpostcreation_taxonomy_mapping_field', 'your_custom_function', 10, 2);
function your_custom_function($field, $taxonomy) {
    // your custom code here
    return $field;
}

Parameters

  • $field (string) – Current form field that is being processed for mapping.
  • $taxonomy (string) – Taxonomy currently being mapped to, i.e., ‘category’.

More information

See Gravity Forms Docs: gform_advancedpostcreation_taxonomy_mapping_field

Examples

Assign Taxonomy based on Term ID

Use the term_id instead of name to assign the taxonomy.

add_filter('gform_advancedpostcreation_taxonomy_mapping_field', function($field, $taxonomy) {
    return 'term_id'; // can also use 'id' or 'ID'
}, 10, 2);

Assign Taxonomy based on Slug

Use the slug instead of name to assign the taxonomy.

add_filter('gform_advancedpostcreation_taxonomy_mapping_field', function($field, $taxonomy) {
    return 'slug';
}, 10, 2);

Conditional Field Mapping based on Taxonomy

Conditionally choose which field to use for mapping based on the taxonomy.

add_filter('gform_advancedpostcreation_taxonomy_mapping_field', function($field, $taxonomy) {
    if ($taxonomy !== 'category') {
        return $field;
    }
    return 'term_id';
}, 10, 2);

This code can be placed in the functions.php file of the active theme, a custom functions plugin, or a custom add-on.