FernandoAcosta.Netdocs

Ocultar simulador por tipo de produto

1 min de leituraAtualizado há 1 semana

Por padrão, o simulador é exibido em produtos simples e variáveis — exceto se:

  • Não exigem entrega (digital, virtual).
  • Estão fora de estoque.
  • São do tipo Agrupado ou Externo.

Se você instalou um plugin que adiciona tipos de produto customizados (assinaturas, ingressos, kits especiais), pode querer ocultar o simulador neles.

Filtro

add_filter( 'wc_shipping_simulator_not_allowed_product_types', 'hide_wc_simulador_frete_types' );
function hide_wc_simulador_frete_types( $product_types ) {
  $product_types[] = 'subscription';
  $product_types[] = 'booking';
  return $product_types;
}

O retorno é o array de tipos onde o simulador NÃO aparece. Os defaults grouped e external já estão inclusos — você adiciona ao array, não substitui.

Forçar exibição em tipos não suportados

Se você quer o oposto — exibir em produtos agrupados, por exemplo:

add_filter( 'wc_shipping_simulator_not_allowed_product_types', function( $types ) {
  return array_diff( $types, [ 'grouped' ] );
});

O simulador foi desenhado pra produtos com peso e dimensões individuais. Em produtos agrupados ou externos, o cálculo pode não fazer sentido. Teste antes de ativar em produção.

Onde colocar

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

Foi útil?