Comment modifier la mathématique du Captcha pour le champ Captcha personnalisé ?

Souhaitez-vous modifier le calcul du captcha pour vos visiteurs avec le champ Captcha personnalisé? Si vous souhaitez modifier les mathématiques utilisées ou limiter la plage de nombres utilisés dans l'équation ou la méthode de calcul elle-même, vous pouvez facilement le faire à l'aide d'un extrait de code personnalisé.

Par défaut, le champ Custom Captcha utilise l'addition et la multiplication pour ses calculs avec des nombres allant de 1 à 15.

Dans ce tutoriel, nous allons vous montrer comment utiliser PHP pour modifier les nombres minimum et maximum utilisés ainsi que la méthode de calcul.

Création du formulaire

Pour commencer, vous devez créer un nouveau formulaire et y ajouter votre champ de formulaire Captcha personnalisé.

Si vous avez besoin d'aide pour configurer un formulaire utilisant le champ de formulaire Custom Captcha, veuillez consulter cette documentation.

créez votre formulaire et ajoutez votre champ de formulaire captcha personnalisé

Ajout du snippet

Ci-dessous, nous allons vous montrer deux extraits différents. L'un d'entre eux modifie simplement le nombre maximum que l'équation utilise et l'autre modifie le calcul pour qu'il soit uniquement additionnel.

Il vous suffit de choisir l'une des options ci-dessous que vous souhaitez utiliser et de l'ajouter à votre site.

Si vous avez besoin d'aide pour ajouter des extraits à votre site, veuillez consulter ce tutoriel.

Modification du nombre minimum

L'exemple ci-dessous fixe le nombre minimal de l'équation à 2.

/**
 * Adjust math captcha settings.
 *
 * @link   https://wpforms.com/developers/change-the-captcha-math-for-the-custom-captcha-addon/
 */

function wpf_dev_math_captcha_settings( $settings ) {
	
	/* Default settings
		array(
			'min' => 1,
			'max' => 15,
			'cal' => array( '+', '*', '-' ),
		);
	 */

	// Change min number 2 for easier math
	$settings[ 'min' ] = 2;

	return $settings;
}

add_filter( 'wpforms_math_captcha', 'wpf_dev_math_captcha_settings', 30, 1 );

Modification du nombre maximum

L'exemple ci-dessous fixe le nombre maximum de l'équation à 4.

/**
 * Adjust math captcha settings.
 *
 * @link   https://wpforms.com/developers/change-the-captcha-math-for-the-custom-captcha-addon/
 */

function wpf_dev_math_captcha_settings( $settings ) {
	
	/* Default settings
		array(
			'min' => 1,
			'max' => 15,
			'cal' => array( '+', '*', '-' ),
		);
	 */

	// Change max number 4 for easier math
	$settings[ 'max' ] = 4;

	return $settings;
}

add_filter( 'wpforms_math_captcha', 'wpf_dev_math_captcha_settings', 30, 1 );

En utilisant uniquement la multiplication

De même, vous pouvez modifier le captcha pour qu'il n'utilise que la multiplication au lieu de l'addition et de la soustraction.

Dans cet exemple, nous modifions le calcul pour n' utiliser que la multiplication.

/**
 * Adjust math captcha settings.
 *
 * @link   https://wpforms.com/developers/change-the-captcha-math-for-the-custom-captcha-addon/
 */

function wpf_dev_math_captcha_settings( $settings ) {
	
	/* Default settings
		array(
			'min' => 1,
			'max' => 15,
			'cal' => [ '+', '*', '-' ],
		);
	 */

    // Use multiplication only for calculations
	$settings[ 'cal' ] = [ '*' ];

	return $settings;
}
add_filter( 'wpforms_math_captcha', 'wpf_dev_math_captcha_settings', 30, 1 );

en utilisant ce snippet, vous pouvez modifier les mathématiques du captcha

Et c'est tout ! Avec cet extrait de code, vous pouvez désormais modifier les chiffres ou le calcul utilisés dans le champ Custom Captcha. Souhaitez-vous limiter le nombre de caractères qu'un utilisateur peut saisir dans le champ de votre formulaire ? Consultez notre article sur Comment limiter le nombre de caractères d'un champ de texte.

Filtre de référence

wpforms_math_captcha

FAQ

Q : Comment puis-je les modifier tous dans la même fonction ?

R : Vous pouvez tout à fait inclure le minimum, le maximum et le calcul dans une seule fonction en utilisant cet extrait.

function wpf_dev_math_captcha_settings( $settings ) {
     
    /* Default settings
        array(
            'min' => 1,
            'max' => 15,
            'cal' => [ '+', '*' ],
        );
     */
 
    // Use addition only for easier math
    // Use the minimum number of 1
    // Use the maximum number of 10
    $settings[ 'cal' ] = [ '+' ];
	$settings[ 'min' ] = [ '1' ];
	$settings[ 'max' ] = [ '10' ];
 
    return $settings;
}
add_filter( 'wpforms_math_captcha', 'wpf_dev_math_captcha_settings', 30, 1 );