Comment limiter le nombre de caractères d'un champ de texte enrichi ?

Introduction

Souhaitez-vous limiter le nombre de caractères dans le champ de texte enrichi? Les champs de formulaire Texte à ligne unique et Paragraphe disposent d'une fonction intégrée qui vous permet de limiter le nombre de caractères ou de mots dans ce champ. Pour en savoir plus, consultez ce guide utile.

Cependant, si vous souhaitez limiter le nombre de caractères pour le champ de formulaire Texte riche, vous pouvez facilement utiliser un petit extrait et dans ce tutoriel, nous allons vous montrer comment faire.

Création du formulaire

Commencez par créer un nouveau formulaire et ajoutez vos champs, y compris au moins un champ de texte enrichi.

Si vous avez besoin d'aide pour créer votre formulaire, veuillez consulter cette documentation.

commencez par créer un formulaire et ajoutez vos champs, y compris au moins un champ de texte enrichi

Ajout du snippet

Il est maintenant temps d'ajouter l'extrait à votre site. Si vous avez besoin d'aide pour savoir comment et où ajouter des snippets à votre site, veuillez consulter ce tutoriel.

/**
* Add Rich Text field validation.
*
* @link https://wpforms.com/developers/how-to-limit-characters-for-the-rich-text-field/
*/
 
function wpf_dev_validate_richtext( $field_id, $field_submit, $form_data ) {
 
    // Optional, you can limit to specific forms. Below, we restrict output to form #3382.
    if ( absint( $form_data[ 'id' ] ) !== 3382 ) {
        return $field_id;
    }

	// Set the maximum character limit here
    $max_characters = 150;

    // Check for character limit
    $char_count = mb_strlen( $field_submit, 'UTF-8' );
    if ( $char_count > $max_characters ) {
        $error_message = sprintf(
            esc_html__( 'Character limit exceeded. The maximum number of characters allowed is %d.', 'wpforms' ),
            $max_characters
        );
        wpforms()->process->errors[ $form_data['id'] ][ $field_id ] = $error_message;
    }
	
	
     
}
add_action( 'wpforms_process_validate_richtext', 'wpf_dev_validate_richtext', 10, 3 );

Cet extrait ne prend en compte que le numéro d'identification du formulaire 3382. Vous devrez mettre à jour ce numéro d'identification pour qu'il corresponde à votre propre numéro d'identification. Si vous ne savez pas où trouver votre numéro d'identification de formulaire, veuillez consulter ce tutoriel.

La partie suivante du snippet examine la variable $max_characters, dont la limite est fixée à 150 caractères. Lorsque le snippet est traité, il examine et compte les caractères (au format UTF-8) dans ce champ et si le nombre de caractères dépasse la limite de 150, une erreur est affichée lors de l'envoi du formulaire.

limiter le nombre de caractères pour le texte enrichi en utilisant le snippet

C'est tout ce dont vous avez besoin pour limiter le nombre de caractères dans le champ Texte riche. Vous souhaitez également empêcher les utilisateurs de saisir une URL dans ce champ ? Consultez notre tutoriel sur la façon de bloquer des domaines dans vos champs de texte.

Référence de l'action : wpforms_process_validate_richtext