Resumo de IA
Introdução
Gostaria de definir um valor mínimo para um campo de preço no seu WPForms? Usando um pequeno trecho de PHP, pode facilmente definir um valor mínimo para o campo de preço de Item Único que é Definido pelo Utilizador. Neste tutorial, vamos guiá-lo passo a passo sobre como conseguir isto.
Criação do formulário
Primeiro, terá de criar um formulário e adicionar um campo de preço de Item Único ao formulário. Assim que tiver adicionado o campo, certifique-se de que o Tipo de Item está definido como Definido pelo Utilizador.
Se precisar de alguma assistência na configuração de um formulário com o campo de Item Único, consulte este artigo.

Adicionar a classe CSS
Em seguida, vamos adicionar uma classe CSS a este campo para que acione o trecho para verificar o valor mínimo que exigimos.
Para adicionar um nome de classe CSS a um campo de formulário, selecione o campo de Item Único e clique no separador Avançadas. Dentro das Classes CSS, insira set-minimum e guarde o formulário.

Adicionar o trecho para definir um valor mínimo
Nesta etapa final, terá de adicionar o trecho ao seu site. Se precisar de ajuda para adicionar trechos ao seu site, consulte este tutorial.
/**
* Set a minimum amount price field.
*
* @link https://wpforms.com/developers/how-to-set-minimum-amount-for-a-price-field/
*/
function wpf_set_minimum_amount_input( $field_id, $field_submit, $form_data ) {
// This snippet will run for all forms
$form_id = $form_data[ 'id' ];
// And it will run for all fields with the CSS class of set-minimum
$fields = $form_data[ 'fields' ];
// Define your minimum amount here.
$minimum_amount = 5;
// Check if field has custom CSS class configured
if ( !empty( $fields[ $field_id ][ 'css' ] ) ) {
$classes = explode( ' ', $fields[$field_id][ 'css' ] );
if ( in_array( 'set-minimum', $classes ) ) {
if ( $minimum_amount > (float) wpforms_sanitize_amount( $field_submit ) ) {
wpforms()->process->errors[ $form_id ][ $field_id ] = __( 'Minimum amount is $' . $minimum_amount . '.', 'plugin-domain' );
return;
}
}
}
}
add_action( 'wpforms_process_validate_payment-single', 'wpf_set_minimum_amount_input', 10, 3 );
Este trecho será executado automaticamente para todos os formulários, mas só será executado nos campos que tiverem o nome de classe CSS set-minimum. Se o valor inserido não atingir o mínimo, produzirá um erro quando o formulário for enviado.

E é tudo o que precisa! Gostaria de saber como ocultar este valor das notificações por e-mail? Consulte o nosso tutorial sobre Como Ocultar o Valor do Preço do Item nas Notificações por E-mail.
FAQ
P: Por que isto não está a funcionar no meu site?
R: Se este erro não estiver a impedir o envio do seu formulário, verifique novamente se inseriu o nome da classe CSS no campo correto.

P: Como defino um valor máximo?
R: Para usar um trecho semelhante para definir um valor máximo, primeiro terá de atualizar o nome das Classes CSS para set-maximum da mesma forma que fez na etapa anterior.
Em seguida, basta adicionar este trecho ao seu site.
/**
* Set a maximum amount price field.
*
* @link https://wpforms.com/developers/how-to-set-minimum-amount-for-a-price-field/
*/
function wpf_set_maximum_amount_input( $field_id, $field_submit, $form_data ) {
// This snippet will run for all forms
$form_id = $form_data[ 'id' ];
// And it will run for all fields with the CSS class of set-minimum
$fields = $form_data[ 'fields' ];
// Define your minimum amount here.
$maximum_amount = 5000;
// Check if field has custom CSS class configured
if ( !empty( $fields[ $field_id ][ 'css' ] ) ) {
$classes = explode( ' ', $fields[ $field_id ][ 'css' ] );
if ( in_array( 'set-maximum', $classes ) ) {
if ( $maximum_amount < (float) wpforms_sanitize_amount( $field_submit ) ) {
wpforms()->process->errors[ $form_id ][ $field_id ] = __( 'Maximum amount is $' . $maximum_amount . '.', 'plugin-domain' );
return;
}
}
}
}
add_action( 'wpforms_process_validate_payment-single', 'wpf_set_maximum_amount_input', 10, 3 );