Resumen de IA
Introducción
¿Le gustaría procesar etiquetas inteligentes en las etiquetas de campo de sus formularios? Con un pequeño fragmento de PHP, esto se puede lograr fácilmente. En este tutorial, le mostraremos cómo procesar etiquetas inteligentes en las etiquetas de campo de su formulario.
Usar etiquetas inteligentes es una herramienta muy útil para extraer y mostrar dinámicamente datos específicos dentro de su formulario.
Por defecto, las etiquetas inteligentes no se procesarán si se colocan dentro de las etiquetas de campo de su formulario.
Sin embargo, esta funcionalidad puede ser útil si, por ejemplo, desea mostrar el nombre de un usuario conectado, la URL de su página o incluso mostrar otros detalles utilizando etiquetas inteligentes personalizadas.
Para este tutorial, vamos a crear un formulario que solo nuestros usuarios conectados puedan ver, por lo tanto, queremos hacerlo más personal utilizando su nombre de pila dentro de la etiqueta de campo de un campo de formulario de Párrafo.
Añadir el fragmento
Vamos a empezar añadiendo nuestro fragmento a nuestro sitio. Si necesita ayuda sobre cómo añadir fragmentos a su sitio, por favor, consulte este tutorial.
A continuación, le mostraremos dos métodos, uno que se dirige a un ID de formulario específico y otro que se aplicaría a todos los formularios. Simplemente seleccione qué fragmento desea utilizar.
Dirigirse a un ID de formulario específico
En este fragmento, nos dirigimos únicamente al ID de formulario 365. Si necesita ayuda para encontrar su ID de formulario, por favor, revise este tutorial.
/**
* Run Smart Tags on all field labels.
*
* @link https://wpforms.com/developers/how-to-process-smart-tags-in-field-labels/
*/
function wpf_dev_textarea_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if ( absint( $form_data[ 'id' ] ) !== 365 ) {
return $field;
}
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_textarea_field_display', 'wpf_dev_textarea_field_display', 10, 3 );
Usar para todos los WPForms
El código que se muestra a continuación permitiría esto en todos sus WPForms.
/**
* Run Smart Tags on field labels in WPForms.
*
* @link https://wpforms.com/developers/how-to-process-smart-tags-in-field-labels/
*/
function wpf_dev_textarea_field_display( $field, $field_atts, $form_data ) {
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_textarea_field_display', 'wpf_dev_textarea_field_display', 10, 3 );
Creación de su formulario
A continuación, vamos a crear nuestro formulario y añadir nuestros campos. El primer campo de formulario que vamos a añadir es un campo de formulario de Texto de Párrafo, vamos a usar nuestra nueva etiqueta inteligente dentro de la etiqueta del campo para extraer el nombre de pila del usuario. Así que vamos a cambiar la etiqueta de este campo a Cuéntenos un poco sobre usted {user_first_name}.

Si necesita ayuda para crear su formulario, revise esta documentación.
Cuando su formulario se cargue, verá el nombre que se extrae de su nueva etiqueta inteligente.

Usar etiquetas inteligentes en las notificaciones por correo electrónico
También puede usar etiquetas inteligentes en sus notificaciones.
Para ello, navegue a Ajustes desde el interior del constructor de formularios y seleccione Notificaciones.
Mientras configura el mensaje de su notificación por correo electrónico, puede seleccionar Mostrar etiquetas inteligentes para incluir las etiquetas inteligentes que desee en su mensaje.

Usar etiquetas inteligentes en otras etiquetas de campo de formulario
A continuación, encontrará el fragmento necesario para cada uno de los diversos campos de formulario en los que puede procesar etiquetas inteligentes en la etiqueta de cada uno de estos campos específicos.
Como se mencionó anteriormente, estos fragmentos son específicos para un solo ID de formulario. Si desea hacerlo disponible para todos los formularios, simplemente elimine el bloque en el fragmento que hace referencia al ID del formulario.
/**
* Run Smart Tags on field labels in WPForms.
*
* @link https://wpforms.com/developers/how-to-process-smart-tags-in-field-labels/
*/
// Run smart tags on text field label.
function wpf_dev_text_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return $field;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_text_field_display', 'wpf_dev_text_field_display', 10, 3 );
// Run smart tags on textarea field label.
function wpf_dev_textarea_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_textarea_field_display', 'wpf_dev_textarea_field_display', 10, 3 );
// Run smart tags on checkbox field label.
function wpf_dev_checkbox_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_checkbox_field_display', 'wpf_dev_checkbox_field_display', 10, 3 );
// Run smart tags on email field label.
function wpf_dev_email_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_email_field_display', 'wpf_dev_email_field_display', 10, 3 );
// Run smart tags on select field label.
function wpf_dev_select_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_select_field_display', 'wpf_dev_select_field_display', 10, 3 );
// Run smart tags on radio field label.
function wpf_dev_radio_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_radio_field_display', 'wpf_dev_radio_field_display', 10, 3 );
// Run smart tags on number field label.
function wpf_dev_number_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_number_field_display', 'wpf_dev_number_field_display', 10, 3 );
// Run smart tags on name field label.
function wpf_dev_name_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_name_field_display', 'wpf_dev_name_field_display', 10, 3 );
// Run smart tags on phone field label.
function wpf_dev_phone_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_phone_field_display', 'wpf_dev_phone_field_display', 10, 3 );
// Run smart tags on address field label.
function wpf_dev_address_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_address_field_display', 'wpf_dev_address_field_display', 10, 3 );
// Run smart tags on URL field label.
function wpf_dev_url_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_url_field_display', 'wpf_dev_url_field_display', 10, 3 );
// Run smart tags on password field label.
function wpf_dev_password_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_password_field_display', 'wpf_dev_password_field_display', 10, 3 );
// Run smart tags on payment checkbox field label.
function wpf_dev_payment_checkbox_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_payment_checkbox_field_display', 'wpf_dev_payment_checkbox_field_display', 10, 3 );
// Run smart tags on payment multiple select field label.
function wpf_dev_payment_multiple_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_payment_multiple_field_display', 'wpf_dev_payment_multiple_field_display', 10, 3 );
// Run smart tags on single payment field label.
function wpf_dev_payment_single_field_display( $field, $field_atts, $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #365.
if( $form_data[ 'id' ] != 365 )
return;
$field[ 'label' ] = wpforms()->smart_tags->process( $field[ 'label' ], $form_data );
return $field;
}
add_filter( 'wpforms_payment_single_field_display', 'wpf_dev_payment_single_field_display', 10, 3 );
Esta funcionalidad no admitirá datos de entrada del usuario (por ejemplo, {field_id="3"}).
¡Y eso es todo! Ahora puedes procesar tus Smart Tags dentro de las etiquetas de campo. ¿Te gustaría procesar Smart Tags en las descripciones de los campos? Echa un vistazo a nuestro artículo sobre Cómo procesar Smart Tags en las descripciones de los campos.
Relacionado
Referencia del filtro: wpforms_textarea_field_display