Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.
Como buscar un field en Gravity Forms de forma única con inputName
Cuando trabajas con Gravity Forms en un desarrollo a medida, echas en falta una forma de obtener un campo (field) de forma fácil, sin depender de IDs ni labels.
Para conseguirlo, usamos el campo inputName. Aunque hay algunas excepciones, como el field Oculto, el inputName nos sirve para detectar de forma única el field de un form, sin tener que depender de un ID que podría cambiar.
Para asignar un inputName en un campo de Gravity Forms, marcamos la opción Permitir al campo rellenarse dinámicamente, en la pestñana Avanzado. Luego, asignamos un nombre de variables para el campo, que luego usaremos para encontrarlo de forma inequívoca.

Con el campo de inputName, luego podemos hacer un bucle en el $form, para obtener, a partir de un $inputName dado, el $field correspondiente.
De esta forma, podemos trabajar en desarrollos que extiendan funcionalidades en formularios de Gravity Forms de forma más ordenada, en alguno de los múltiples Hooks que Gravity Forms nos ofrece.
function gw_get_field_by_input_name( $form, $inputName ) {
foreach( $form['fields'] as $field ) {
if( $field->inputName == $inputName ) {
return $field;
}
}
return false;
}
También podéis usar adminLabel, en los casos que inputName no esté disponible.
function gw_get_field_by_admin_name( $form, $adminLabel ) {
foreach( $form['fields'] as $field ) {
if( $field->adminLabel == $adminLabel ) {
return $field;
}
}
return false;
}