Gostaria de alterar os subtítulos do campo Endereço no WPForms? Estes subtítulos permitem aos utilizadores saber que tipo de informação se espera que o utilizador preencha. Neste tutorial, mostraremos como alterar esses subtítulos usando PHP.
Por defeito, o campo do formulário Endereço apresenta campos adicionais. Cada um desses campos tem as suas próprias etiquetas, designadas por sub-rótulos.
Criar o formulário
Começaremos por criar o formulário e adicionar os nossos campos, que incluirão o campo de formulário Endereço.
Se precisar de ajuda para criar o seu formulário, consulte esta documentação.
Alterar os subtítulos de endereço
Agora é altura de adicionar o snippet ao seu site.
Se precisar de ajuda para saber onde e como adicionar snippets ao seu site, consulte este tutorial.
Apenas o esquema de endereços dos EUA
O fragmento de código abaixo permite-lhe alterar os subtítulos no seu campo Endereço para o esquema dos EUA.
/** * Change the sublabels for the Address field for the US Address Scheme. * * @link https://wpforms.com/developers/how-to-change-the-address-field-sublabels/ */ function wpf_dev_address_field_properties_usa( $properties, $field, $form_data ) { // check for address scheme if ( $field[ 'scheme' ] === 'us' ){ // Change sublabel values $properties[ 'inputs' ][ 'address1' ][ 'sublabel' ][ 'value' ] = __( 'Street Address' ); $properties[ 'inputs' ][ 'address2' ][ 'sublabel' ][ 'value' ] = __( 'Apartment #' ); $properties[ 'inputs' ][ 'city' ][ 'sublabel' ][ 'value' ] = __( 'City' ); $properties[ 'inputs' ][ 'state' ][ 'sublabel' ][ 'value' ] = __( 'State' ); $properties[ 'inputs' ][ 'postal' ][ 'sublabel' ][ 'value' ] = __( 'Zip' ); } return $properties; } add_filter( 'wpforms_field_properties_address', 'wpf_dev_address_field_properties_usa', 10, 3 );
Apenas para endereços internacionais
O fragmento de código abaixo permite-lhe alterar os subtítulos do seu campo Endereço para o esquema Internacional.
/** * Change the sublabels for the Address field for the International Address Scheme. * * @link https://wpforms.com/developers/how-to-change-the-address-field-sublabels/ */ function wpf_dev_address_field_properties_international( $properties, $field, $form_data ) { // check for address scheme if ( $field['scheme'] === 'international' ){ // Change sublabel values $properties[ 'inputs' ][ 'address1' ][ 'sublabel' ][ 'value' ] = __( 'Address' ); $properties[ 'inputs' ][ 'address2' ][ 'sublabel' ][ 'value' ] = __( 'Apartment / Suite #' ); $properties[ 'inputs' ][ 'city' ][ 'sublabel' ][ 'value' ] = __( 'City' ); $properties[ 'inputs' ][ 'state' ][ 'sublabel' ][ 'value' ] = __( 'State / Province / Region' ); $properties[ 'inputs' ][ 'postal' ][ 'sublabel' ][ 'value' ] = __( 'Postal Code' ); $properties[ 'inputs' ][ 'country' ][ 'sublabel' ][ 'value' ] = __( 'Country' ); } return $properties; } add_filter( 'wpforms_field_properties_address', 'wpf_dev_address_field_properties_international', 10, 3 );
E é tudo! Gostaria de criar esquemas de endereço adicionais para serem utilizados no seu campo Endereço? Dê uma vista de olhos ao nosso artigo sobre Como criar esquemas adicionais para o campo de endereço.
Filtro de referência
FAQ
P: Posso alterá-las apenas para um formulário?
R: Sem dúvida, se apenas pretender alterar estes subtítulos para um formulário específico, utilize este snippet e lembre-se de atualizar o ID do formulário 123 para corresponder ao seu próprio ID do formulário. Se precisar de ajuda para encontrar o ID do formulário, consulte este guia útil.
/** * Change the sublabels for the Address field for the US Address Scheme. * * @link https://wpforms.com/developers/how-to-change-the-address-field-sublabels/ */ function wpf_dev_address_field_properties_usa( $properties, $field, $form_data ) { // Only process this snippet on the form ID 123 if ( absint( $form_data[ 'id' ] ) !== 123 ) { return $properties; } // check for address scheme if ( $field[ 'scheme' ] === 'us' ){ // Change sublabel values $properties[ 'inputs' ][ 'address1' ][ 'sublabel' ][ 'value' ] = __( 'Street Address' ); $properties[ 'inputs' ][ 'address2' ][ 'sublabel' ][ 'value' ] = __( 'Apartment #' ); $properties[ 'inputs' ][ 'city' ][ 'sublabel' ][ 'value' ] = __( 'City' ); $properties[ 'inputs' ][ 'state' ][ 'sublabel' ][ 'value' ] = __( 'State' ); $properties[ 'inputs' ][ 'postal' ][ 'sublabel' ][ 'value' ] = __( 'Zip' ); } return $properties; } add_filter( 'wpforms_field_properties_address' , 'wpf_dev_address_field_properties_usa', 10, 3 );
Como pode ver no snippet, tudo o que precisamos de fazer é adicionar a verificação do ID do formulário com if ( absint( $form_data[ 'id' ] ) !== 123 ) { return $properties; }
O resto do snippet permanece exatamente o mesmo que o exemplo com todos os formulários.