¡Atención!

Este artículo contiene código PHP y está destinado a desarrolladores. Ofrecemos este código como cortesía, pero no proporcionamos soporte para personalizaciones de código o desarrollo de terceros.

Para obtener ayuda adicional, consulta el tutorial de WPBeginner sobre cómo añadir código personalizado.

Descartar

Cómo Almacenar Valores de Casillas de Verificación como un Array

Introducción

¿Te interesa almacenar los valores de tus casillas de verificación como una matriz dentro de la entrada y las notificaciones por correo electrónico? Normalmente, los campos de casilla de verificación muestran los elementos seleccionados individualmente en líneas separadas dentro de la entrada y las notificaciones.

por defecto, las selecciones de casillas de verificación se almacenan en una línea separada

Sin embargo, con el enfoque que vamos a describir, puedes asegurarte de que estos valores se almacenen como una matriz coherente. Este tutorial te guiará a través de los pasos necesarios para lograr esta presentación optimizada de las selecciones de casillas de verificación. ¡Avancemos y optimicemos la representación de tus datos!

Creación del formulario

Para iniciar el proceso, comencemos creando un nuevo formulario e incorporando los campos esenciales. Asegúrate de que entre estos campos se incluya al menos un campo de Casilla de verificación. Esta base servirá como punto de partida para implementar la funcionalidad deseada. Avancemos y configuremos tu formulario en consecuencia.

comienza creando tu formulario y añadiendo tus campos, incluyendo al menos un campo de casilla de verificación

Si necesitas ayuda para crear tu formulario, echa un vistazo a esta útil guía.

Añadir el fragmento

Ahora es el momento de añadir el fragmento de código que completará este proceso para ti. Si necesitas ayuda sobre cómo y dónde añadir fragmentos de código a tu sitio, revisa este tutorial.

/**
 * Display checkbox values in the email notification only as a one-liner.
 *
 * @link  https://wpforms.com/developers/how-to-store-checkbox-values-as-an-array/
 */
function wpf_inline_checkbox_values( $value, $field, $form_data, $context ) {

	// Check if there are any checkboxes in this submission
	if ( $field['type'] !== 'checkbox' ) {
		return $value;
	}

	// Return these values in a single line separated by a comma
	return str_replace( "\n", ', ', $value );
}
add_filter( 'wpforms_html_field_value', 'wpf_inline_checkbox_values', 10, 4 );

Este fragmento de código tomará cualquier valor de casilla de verificación de cualquier formulario de WPForms y mostrará las selecciones como una sola línea separada por comas tanto para la entrada como para la notificación por correo electrónico.

Ahora, cuando un usuario seleccione los elementos de la Casilla de verificación, se almacenarán y enviarán por correo electrónico en una sola línea por cada casilla de verificación, separadas por una coma para cada selección.

ahora cada casilla de verificación se almacenará y enviará por correo electrónico en la notificación con una sola línea por cada casilla de verificación y sus selecciones separadas por una coma, almacenando esencialmente los valores de las casillas de verificación como una matriz

¡Y eso es todo lo que necesitas para almacenar los valores de las casillas de verificación como una matriz! ¿Te gustaría también abrir y cerrar un formulario según la hora del día? Echa un vistazo a nuestro tutorial sobre Cómo programar un formulario según la hora del día.

Referencia de filtro: wpforms_html_field_value

Preguntas frecuentes

P: ¿Cómo puedo hacer esto solo para las notificaciones por correo electrónico?

R: Si deseas esta funcionalidad solo para la plantilla de correo electrónico, primero asegúrate de que la configuración de correo electrónico de WPForms esté establecida en correo electrónico HTML. Para saber cómo lograr esto, consulta esta documentación.

Una vez que hayas confirmado que estas configuraciones están establecidas en Plantilla HTML, utiliza este fragmento de código para habilitar esta funcionalidad solo para las notificaciones por correo electrónico.

/**
 * Display checkbox values in the email notification only as a one-liner.
 *
 * @link  https://wpforms.com/developers/how-to-store-checkbox-values-as-an-array/
 */
function wpf_inline_checkbox_values( $value, $field, $form_data, $context ) {

	// Check if there are any checkboxes in this submission and that the Email Template is HTML
	if ( $field['type'] !== 'checkbox' || $context !== 'email-html' ) {
		return $value;
	}

	// Return these values in a single line separated by a comma
	return str_replace( "\n", ', ', $value );
}
add_filter( 'wpforms_html_field_value', 'wpf_inline_checkbox_values', 10, 4 );