FernandoAcosta.Netdocs

Onde o simulador aparece

2 min de leituraAtualizado há 5 dias

Por padrão, o simulador é exibido junto do SKU e dos botões de compartilhar na página do produto. Você pode mover pra outras posições padrão ou colocar onde quiser via shortcode.

Posições padrão

Em WooCommerce → Configurações → Produtos → Simulador de frete, no campo Exibição do simulador:

Opção Onde fica
Junto dos dados do produto Dentro do summary (título, preço, descrição curta).
Antes do botão comprar Logo acima do "Adicionar ao carrinho".
Depois do botão comprar Logo abaixo do "Adicionar ao carrinho".
Antes do formulário Antes de toda a área de variações + quantidade + botão.
Depois do formulário Depois de toda essa área.
Junto do SKU, botões de compartilhar Padrão.
Outro local Desativa o posicionamento automático.

A Prioridade controla a ordem dentro do mesmo hook. Padrão 10. Quanto menor, mais cedo.

Com Elementor ou outro construtor

Se a página de produto é montada por Elementor, Divi, Bricks ou similar, geralmente os hooks acima ainda funcionam — o construtor renderiza o produto usando a estrutura nativa do WooCommerce.

Se a sua página foi feita inteiramente sem usar a estrutura nativa, use o shortcode:

[wc_simulador_frete]

Cole no widget de Shortcode/HTML do construtor, no ponto onde quiser o simulador.

Em algumas posições — especialmente fora do .entry-summary — o cálculo automático com mudança de variação ou quantidade pode parar de funcionar. O JavaScript precisa "ver" os campos do produto pra recalcular.

Se isso acontecer, ajuste o Container do produto nas configurações pra apontar pra div correta. /article/problemas-comuns.

Em local totalmente customizado (PHP)

No template ou em algum hook do tema:

if ( is_product() ) {
  WC_Shipping_Simulator_Show::wc_shipping_simulator_show_simulator();
}

Ou ainda:

echo do_shortcode( '[wc_simulador_frete]' );

Carregar scripts em todas as páginas

Se você usa o simulador fora da página de produto (popup de quick-view, página customizada com produto fixo), os scripts JavaScript não carregam por padrão.

Ative Carregamento de scripts nas configurações ou via filtro:

add_filter( 'wc_simulador_frete_load_scripts', '__return_true' );

Mais detalhes em /article/carregar-scripts-em-todas-as-paginas.

Mudar a posição via filtro

Se você quer condicionar o hook por categoria, tipo de produto ou outra regra:

add_filter( 'wc_shipping_simulator_hook', function( $hook ) {
  if ( has_term( 'frete-grandes', 'product_cat' ) ) {
    return 'woocommerce_after_add_to_cart_button';
  }
  return $hook;
});

add_filter( 'wc_shipping_simulator_priority', function( $priority ) {
  return 5;
});
Foi útil?