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 personnaliser la balise intelligente de date

Souhaitez-vous personnaliser l'affichage des dates dans vos formulaires à l'aide des balises intelligentes ? Bien que WPForms inclue une balise intelligente intégrée pour afficher la date actuelle, vous pouvez personnaliser son format pour répondre à vos besoins.

Ce guide vous montrera comment utiliser les balises intelligentes dans les étiquettes de champ et comment personnaliser le format de la balise intelligente de date.

Comprendre les balises intelligentes

Avant de commencer, vous voudrez peut-être consulter notre guide complet sur les balises intelligentes pour découvrir toutes les options par défaut disponibles. Pour ce tutoriel, nous nous concentrerons sur la création d'un formulaire avec un champ de case à cocher qui inclut la date actuelle dans son étiquette.

Création de votre formulaire

Créons un formulaire de téléchargement de livre numérique avec une case à cocher obligatoire pour les conditions générales. Cette case à cocher inclura la date actuelle dans son étiquette.

Si vous avez besoin d'aide pour créer un formulaire, veuillez consulter notre guide sur la création de votre premier formulaire.

Une fois que vous avez créé votre formulaire et ajouté votre champ Case à cocher, ajoutez cette balise intelligente dans l'étiquette de ce champ :

{date format="m/d/Y"}
Ajoutez le champ de formulaire de case à cocher à votre formulaire et, dans l'étiquette du champ, ajoutez la balise intelligente de date

Activation des balises intelligentes dans les étiquettes de champ

Tout d'abord, nous devons ajouter un extrait de code qui permet l'utilisation des balises intelligentes dans les étiquettes de champs de cases à cocher. Si vous ne savez pas comment ajouter du code personnalisé à votre site, veuillez consulter notre guide sur l'ajout d'extraits de code.

/**
 * Enable Smart Tags in Checkbox field labels
 *
 * @link https://wpforms.com/developers/how-to-customize-date-format-in-the-date-smart-tag/
 */
function wpf_dev_checkbox_choices_process_smarttags( $field, $deprecated, $form_data ) {
    foreach ( $field[ 'choices' ] as $key => $choice ) {
        if ( ! empty( $choice[ 'label' ] ) ) {
            $field[ 'choices' ][ $key ][ 'label' ] = apply_filters(
                'wpforms_process_smart_tags', 
                $choice[ 'label' ], 
                $form_data 
            );
        }
    }
    return $field;
}
add_filter( 'wpforms_checkbox_field_display', 'wpf_dev_checkbox_choices_process_smarttags', 10, 3 );

Ce code permet l'utilisation des balises intelligentes dans n'importe quelle étiquette de champ de case à cocher sur tous vos formulaires.

Personnalisation du format de date

Par défaut, la balise intelligente de date utilise le format m/j/A. Voici ce que signifie chaque partie :

  • m/ : Mois avec zéros non significatifs (01-12)
  • j/ : Jour avec zéros non significatifs (01-31)
  • A : Année complète sur quatre chiffres (par exemple, 2024)

Pour personnaliser le format de date, modifiez le paramètre de format de la balise intelligente. Par exemple :

{date format="Y-m-d H:i:s"}

Ce format affichera :

  • Année d'abord (A)
  • Suivie du mois (m)
  • Puis du jour (j)
  • Plus l'heure en heures (H), minutes (i) et secondes (s)
En modifiant le format par défaut de la date, vous pouvez choisir le format de date que vous souhaitez pour votre balise intelligente par formulaire et même par champ

Personnalisation avancée de la date

Vous voulez ajouter des jours à votre date ? Voici un extrait qui ajoute deux jours à la date actuelle :

/**
 * Add 2 days to the Date Smart Tag
 *
 * @link https://wpforms.com/developers/how-to-customize-date-format-in-the-date-smart-tag/
 */
function wpf_dev_process_smarttag_date_plus_two( $content, $tag ) {
    // Only run if it is our desired tag
    if ( 'current_date_plus_two' === $tag ) {
        date_default_timezone_set( 'US/Eastern' );
        $link = date( 'Y-m-d', strtotime( '+2 days' ) ); // Output current date plus 2 days
        
        // Replace the tag with our link
        $content = str_replace( '{current_date_plus_two}', $link, $content );
    }
    return $content;
}
add_filter( 'wpforms_smart_tag_process', 'wpf_dev_process_smarttag_date_plus_two', 10, 2 );

Vous pouvez trouver tous les formats de date valides dans la documentation PHP officielle.

C'est tout ! Vous savez maintenant comment personnaliser la balise intelligente de date. Ensuite, souhaitez-vous améliorer davantage vos formulaires ? Consultez notre guide sur la création d'un identifiant unique pour chaque entrée de formulaire pour plus de détails.

Filtre de référence

wpforms_checkbox_field_display