FernandoAcosta.Netdocs

Personalizar textos do simulador

2 min de leituraAtualizado há 1 semana

Os textos do simulador (título, botão, prazo de entrega, mensagem quando o CEP não tem cobertura) podem ser personalizados pelas configurações ou via filtro PHP.

Pelas configurações

Em WooCommerce → Configurações → Produtos → Simulador de frete:

  • Título — texto acima do formulário.
  • Texto do botão — texto do botão de calcular.

Funcionam pra todos os templates. Se você deixar em branco, o template aplica o default próprio dele.

Texto do prazo de entrega

Por padrão, o prazo aparece como Entrega em 10 dias úteis. Pra mudar:

add_filter( 'wc_shipping_simulator_delivery_time_texts', function( $texts ) {
  return [
    'singular' => 'Em %d dia útil',
    'plural'   => 'Em %d dias úteis',
  ];
});

duas frases: uma pra plural e outra pra singular. Mantenha o %d — ele é substituído pelo número de dias na hora de exibir.

Esse filtro tem efeito só no simulador. O texto que aparece no carrinho/checkout continua sendo o do plugin de frete (ou do tema).

Frete offline

Esse filtro só tem efeito no Frete Offline se você ativou a opção Prazo de entrega separado no plugin Frete Offline. Caso contrário, o prazo é parte do nome do método.

Mensagem quando não há métodos

Quando o CEP não está em nenhuma área de entrega configurada, o simulador mostra a mensagem padrão (algo como Nenhuma opção de envio para o CEP informado).

Pra trocar:

add_filter( 'wc_simulador_frete_no_methods_available', function( $message ) {
  return 'Seu CEP não está em nossa área de atendimento.';
});

Título via filtro

Se você precisa de título dinâmico (ex: diferente por categoria), use o filtro em vez do campo da config:

add_filter( 'wc_shipping_simulator_calculator_title', function( $title ) {
  if ( has_term( 'frete-gratis', 'product_cat' ) ) {
    return 'Frete grátis pra todo o Brasil!';
  }
  return $title;
});

Texto do botão via filtro

add_filter( 'wc_shipping_simulator_button_text', function( $text ) {
  return 'Calcular envio';
});

Onde colocar os filtros

functions.php do tema-filho ou plugin de snippets. Snippets PHP personalizados não são cobertos pelo suporte.

Foi útil?