Primero, se necesita agregar el siguiente filtro, que está documentado aquí: https://formidableforms.com/knowledgebase/frm_setup_new_fields_vars/#kb-display-userid-dropdown-on-front-end-for-admin
add_filter('frm_setup_new_fields_vars', 'show_user_dropdown', 15, 2);
add_filter('frm_setup_edit_fields_vars', 'show_user_dropdown', 15, 3);
function show_user_dropdown($values, $field, $entry_id=false){
if ( $values['type'] == 'user_id' && !is_admin() && current_user_can('administrator') ){
$values['type'] = 'select';
$values['options'] = FrmProFieldsHelper::get_user_options();
$values['use_key'] = true;
$values['custom_html'] = FrmFieldsHelper::get_default_html('select');
}
return $values;
}
Este funcionará para Administrador.
Agregando este filtro, alterado por mí, funcionará también para Editor (y en teoría para todos los demás roles):
add_filter('frm_setup_new_fields_vars', 'show_user_dropdown_editor', 15, 2);
add_filter('frm_setup_edit_fields_vars', 'show_user_dropdown_editor', 15, 3);
function show_user_dropdown_editor($values, $field, $entry_id=false){
if ( $values['type'] == 'user_id' && !is_admin() && current_user_can('editor') ){
$values['type'] = 'select';
$values['options'] = FrmProFieldsHelper::get_user_options();
$values['use_key'] = true;
$values['custom_html'] = FrmFieldsHelper::get_default_html('select');
}
return $values;
}
Y Voilá! ahora tanto el Administrador como el Editor pueden usar ver y editar el UserID asociado con una entrada, en el front-end con una dropdown box.
NOTA: Para agregar los filtros uso el plugin Code Snippets, de Shea Bunge.

