Como alterar os sub-rótulos do campo de endereço

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.

Por predefinição, o campo do formulário Endereço inclui 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.

criar o formulário e adicionar os seus campos

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

agora pode alterar os subtítulos do campo de endereço para o que quiser

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

wpforms_field_properties

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.