FernandoAcosta.Netdocs

Banner na página de obrigado

2 min de leituraAtualizado há 5 dias

O banner da página de obrigado é o ponto central do plugin. É renderizado automaticamente após qualquer pedido, com todos os dados embutidos pra abrir a pesquisa Ebit.

Quando aparece

O banner é injetado no hook woocommerce_thankyou — a página de "Obrigado pela sua compra" do WooCommerce, exibida logo após o checkout.

A renderização tem duas condições:

  1. O ID da Loja está preenchido em Configuração.
  2. O pedido existe e foi recuperado com sucesso (wc_get_order).

Se uma das duas falhar, o banner não aparece (sem erro visível).

Controlando a posição

A opção Prioridade define a priority do hook. O padrão é 10.

  • Tema injetando muito conteúdo na página de obrigado? Aumente pra 99 pra renderizar depois de tudo.
  • Quer o banner como primeiro item visível? Coloque 1.
add_action( 'woocommerce_thankyou', 'minha_funcao', $this->priority, 1 );

A prioridade também é filtrável dinamicamente:

add_filter( 'wc_ebit_priority', function( $priority ) {
    return 5;
});

O que é enviado

Quando o banner é renderizado, todos os parâmetros vão dentro de um <param id="ebitParam">. O JS do Ebit lê esse param e abre a pesquisa pré-preenchida.

Lista completa em dados enviados ao Ebit.

Como é renderizado

O HTML final é simples:

<div id="wc-ebit-banner">
  <param id="ebitParam" value="email=...&storeId=...&...">
  <a id="bannerEbit"></a>
  <!-- script do Ebit, se inline -->
</div>

O JS do Ebit (getSelo.js) lê o <param>, monta a URL da pesquisa e injeta o banner no <a id="bannerEbit">.

Se Exibir Lightbox estiver ativado (padrão), o JS do Ebit abre um modal sobre a página com a pesquisa. Tecnicamente, a URL do script ganha &lightbox=true.

Pra desativar e mostrar o banner inline (sem modal), desmarque a opção em Configuração.

Customizando o banner

Pra modificar parâmetros enviados ao Ebit (adicionar campanha, mudar gênero padrão, sobrescrever produto), use wc_ebit_banner_params:

add_filter( 'wc_ebit_banner_params', function( $args, $order ) {
    $args['mktSaleID'] = 999;
    return $args;
}, 10, 2 );

Pra trocar a tag <script> final (adicionar async/defer):

add_filter( 'wc_ebit_banner_tags', function( $tag ) {
    return str_replace( '<script', '<script async defer', $tag );
});

Lista completa: filtros disponíveis.

Próximos passos

Foi útil?