This article contains PHP code and is intended for developers. We offer this code as a courtesy, but don't provide support for code customizations or 3rd party development.
Modify the options included in a lookup field before they are displayed in the form.
Usage
add_filter( 'frm_filtered_lookup_options', 'change_lookup_options', 10, 2 );
Parameters
- $field (object) - the field the lookup field is using
- $args (array)
- limit (int) - the maximum number of options to include in the lookup field
Examples
Add extra content to lookup options
This example adds more content around the values shown in a lookup field. It changes the options like '2.1', '2.2' to 'Version 2.1 is updated', 'Version 2.2 is updated'.
add_filter( 'frm_filtered_lookup_options', 'change_lookup_options', 10, 2 );
function change_lookup_options( $options, $args ) {
if ( $args['field']->id == 25 ) { // change 25 to the id of the field in the other form
foreach ( $options as $k => $option ) {
$options[ $k ] = 'Version ' . $option . ' is updated';
}
}
return $options;
}
Display User ID field with display name and ID in Lookup Field
There may be times when you want to use a Lookup field mapped to a User ID field from another form. By default, the User ID is shown rather than the display name. You can show the display name and the user ID as options with this example.
add_filter( 'frm_filtered_lookup_options', 'change_lookup_options', 10, 2 );
function change_lookup_options( $options, $args ) {
if ( $args['field']->id == 808) { // change 808 to the id of the user ID field from the other form
foreach ( $options as $k => $option ) {
$user = get_user_by('id', $option);
$value = $user->display_name;
$options[ $k ] = $value . ' - ID ' . $option;
}
}
return $options;
}
Replace 808 with the User ID field in your other form (the one that the lookup field is mapped to).
Change Log
Added in version 3.0.06