Attention !

Cet article contient du code PHP et est destiné aux développeurs. Nous fournissons ce code à titre de courtoisie, mais nous n'offrons pas de support pour les personnalisations de code ou le développement tiers.

Pour obtenir de l'aide supplémentaire, veuillez consulter le tutoriel de WPBeginner sur l'ajout de code personnalisé.

Ignorer

Comment stocker les valeurs des cases à cocher sous forme de tableau

Introduction

Souhaitez-vous stocker les valeurs de vos cases à cocher sous forme de tableau dans l'entrée et les notifications par e-mail ? Normalement, les champs de cases à cocher affichent les éléments sélectionnés individuellement sur des lignes séparées dans l'entrée et les notifications.

par défaut, les sélections de cases à cocher sont stockées sur une ligne séparée

Cependant, avec l'approche que nous allons décrire, vous pouvez vous assurer que ces valeurs sont stockées sous forme de tableau cohérent. Ce tutoriel vous guidera à travers les étapes nécessaires pour obtenir cette présentation simplifiée des sélections de cases à cocher. Procédons et optimisons la représentation de vos données !

Création du formulaire

Pour commencer le processus, créons un nouveau formulaire et incorporons les champs essentiels. Assurez-vous qu'au moins un champ Case à cocher figure parmi ces champs. Cette base servira de fondement à la mise en œuvre de la fonctionnalité souhaitée. Allons-y et configurons votre formulaire en conséquence.

commencez par créer votre formulaire et ajouter vos champs, y compris au moins un champ de case à cocher

Si vous avez besoin d'aide pour créer votre formulaire, veuillez consulter ce guide utile.

Ajout du snippet

Il est maintenant temps d'ajouter le extrait de code qui complétera ce processus pour vous. Si vous avez besoin d'aide sur comment et où ajouter des extraits de code à votre site, veuillez consulter ce tutoriel.

/**
 * 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 );

Cet extrait de code prendra n'importe quelle valeur de case à cocher de n'importe quel formulaire WPForms et affichera les sélections sur une seule ligne séparée par une virgule pour l'entrée ainsi que pour la notification par e-mail.

Maintenant, lorsqu'un utilisateur sélectionne les éléments de la Case à cocher, ils seront stockés et envoyés par e-mail sur une seule ligne pour chaque case à cocher, séparés par une virgule pour chaque sélection.

maintenant, chaque case à cocher sera stockée et envoyée par e-mail dans la notification avec une seule ligne pour chaque case à cocher et leurs sélections séparées par une virgule, stockant essentiellement les valeurs des cases à cocher sous forme de tableau

Et c'est tout ce dont vous avez besoin pour stocker les valeurs des cases à cocher sous forme de tableau ! Souhaitez-vous également ouvrir et fermer un formulaire en fonction de l'heure de la journée ? Consultez notre tutoriel sur Comment planifier un formulaire en fonction de l'heure de la journée.

Référence de filtre : wpforms_html_field_value

FAQ

Q : Comment puis-je faire cela uniquement pour les notifications par e-mail ?

R : Si vous souhaitez cette fonctionnalité uniquement pour le modèle d'e-mail, assurez-vous d'abord que vos paramètres d'e-mail WPForms sont définis sur e-mail HTML. Pour savoir comment y parvenir, veuillez consulter cette documentation.

Une fois que vous avez confirmé que ces paramètres sont définis sur Modèle HTML, utilisez cet extrait de code pour activer cette fonctionnalité uniquement pour les notifications par e-mail.

/**
 * 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 );