Como alterar a matemática do Captcha para o campo Captcha personalizado

Gostaria de alterar a matemática do captcha para os seus visitantes com o campo Captcha personalizado? Se pretender alterar a matemática utilizada ou limitar o intervalo de números utilizados na equação ou limitar o próprio método de cálculo, pode fazê-lo facilmente com um fragmento de código personalizado.

Por predefinição, o campo Captcha personalizado utiliza a adição e a multiplicação para a sua matemática com números que variam de 1 a 15.

Neste tutorial, vamos mostrar-lhe como utilizar o PHP para alterar os números mínimo e máximo utilizados, bem como o método de cálculo utilizando PHP.

Criar o formulário

Para começar, é necessário criar um novo formulário e adicionar o campo de formulário Captcha personalizado ao formulário.

Se precisar de ajuda para configurar um formulário utilizando o campo de formulário Captcha personalizado, consulte esta documentação.

crie o seu formulário e adicione o seu campo de formulário captcha personalizado

Adicionar o snippet

Abaixo, vamos mostrar-lhe dois snippets diferentes. Um deles apenas altera o número máximo que a equação utiliza e o outro altera o cálculo apenas para adicional.

Basta escolher uma das opções abaixo que gostaria de utilizar e adicioná-la ao seu sítio.

Se precisar de ajuda sobre como adicionar snippets ao seu site, consulte este tutorial.

Alterar o número mínimo

O exemplo mostrado abaixo definirá o número mínimo da equação como 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 );

Alterar o número máximo

O exemplo mostrado abaixo definirá o número máximo da equação como 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 );

Utilizando apenas a multiplicação

Da mesma forma, também pode alterar o captcha para utilizar apenas a multiplicação em vez da adição e da subtração.

Neste exemplo, estamos a alterar o cálculo para utilizar apenas a multiplicação.

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

utilizando este snippet, pode alterar a matemática do captcha

E é isso! Com este snippet de código, pode agora alterar os números ou o cálculo utilizado no campo Captcha personalizado. Gostaria de limitar o número de caracteres que um utilizador pode introduzir no seu campo de formulário? Veja o nosso artigo sobre Como limitar o número de caracteres de um campo de texto.

Filtro de referência

wpforms_math_captcha

FAQ

P: Como é que posso alterar todos eles na mesma função?

R: É absolutamente possível incluir o mínimo, o máximo e o cálculo numa única função, utilizando este snippet.

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