FernandoAcosta.Netdocs

Filtros disponíveis

2 min de leituraAtualizado há 5 dias

Referência completa dos filtros disponíveis no WooCommerce Ebit. Use pra customizar dados enviados ao Ebit, mudar comportamento de hooks e adaptar pra integrações específicas.

Os exemplos abaixo são pra colocar no functions.php do tema-filho ou em um plugin de snippets.

Configuração

wc_ebit_store_id

Sobrescreve o ID da loja Ebit dinamicamente.

add_filter( 'wc_ebit_store_id', function( $store_id ) {
    if ( defined( 'WP_ENV' ) && 'development' === WP_ENV ) {
        return 'STORE_ID_DEV';
    }
    return $store_id;
});

wc_ebit_priority

Posição do banner na página de obrigado.

add_filter( 'wc_ebit_priority', fn( $priority ) => 5 );

wc_ebit_banner_url

URL do banner do e-mail.

add_filter( 'wc_ebit_banner_url', function( $url ) {
    return is_user_logged_in() ? $url : 'https://exemplo.com/banner-novo.png';
});

wc_ebit_inline_script

Define se o JS Ebit é inline (yes) ou via wp_footer (no).

add_filter( 'wc_ebit_inline_script', fn() => 'yes' );

Hook do e-mail

wc_ebit_email_filter

Hook usado pra injetar o banner no e-mail. Padrão: woocommerce_email_order_details.

add_filter( 'wc_ebit_email_filter', fn() => 'woocommerce_email_footer' );

wc_ebit_not_allowed_emails

Lista de tipos de e-mail que não recebem o banner. Padrão: failed_order, customer_refunded_order, cancelled_order.

add_filter( 'wc_ebit_not_allowed_emails', function( $emails ) {
    $emails[] = 'customer_processing_order';
    return $emails;
});

wc_ebit_banner_params

Modifica todos os parâmetros do banner antes do envio.

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

wc_ebit_banner_tags

Modifica a tag <script> final do banner.

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

Parâmetros da URL da pesquisa no e-mail (separado do banner da página de obrigado).

add_filter( 'wc_ebit_banner_link_params', function( $args, $order ) {
    $args['campanha'] = 'email-blackfriday';
    return $args;
}, 10, 2 );

wc_ebit_banner_link

Sobrescreve a URL completa da pesquisa no e-mail.

add_filter( 'wc_ebit_banner_link', function( $url, $order ) {
    return 'https://meu-dominio.com/avaliar/' . $order->get_id();
}, 10, 2 );

Pagamento

wc_ebit_payment_type

Mapeia o gateway pra um dos códigos Ebit (05, 08, 90, 14).

add_filter( 'wc_ebit_payment_type', function( $type, $order ) {
    if ( 'meu-gateway-pix' === $order->get_payment_method() ) {
        return '90';
    }
    return $type;
}, 10, 2 );

wc_ebit_card_flag

Bandeira do cartão. Padrão: 7 (Outros).

add_filter( 'wc_ebit_card_flag', function( $flag, $order ) {
    $bandeira = $order->get_meta( '_card_brand' );
    return strtolower( $bandeira ) === 'visa' ? 1 : $flag;
}, 10, 2 );

wc_ebit_installments

Número de parcelas. Padrão: 1.

add_filter( 'wc_ebit_installments', function( $parcels, $order ) {
    return (int) $order->get_meta( '_installments' ) ?: $parcels;
}, 10, 2 );

wc_ebit_invoice_emissor

Tipo de emissor da nota fiscal. Padrão: 19 (Outros).

add_filter( 'wc_ebit_invoice_emissor', fn() => 19 );

Entrega

wc_ebit_delivery_time

Prazo de entrega em dias. Padrão: extraído do método de envio (texto "Entrega em N dias") ou 10.

add_filter( 'wc_ebit_delivery_time', function( $time, $order ) {
    return min( $time, 30 );
}, 10, 2 );

Produto

wc_ebit_eanCode

EAN do produto. Padrão: lê do meta configurado em Campo para Código EAN.

add_filter( 'wc_ebit_eanCode', function( $ean, $product, $item ) {
    return $ean ?: get_post_meta( $product->get_id(), '_global_ean', true );
}, 10, 3 );

wc_ebit_CategoryL5

Categoria nível 5 do produto. Padrão: espaço.

add_filter( 'wc_ebit_CategoryL5', function( $category, $product ) {
    $terms = get_the_terms( $product->get_id(), 'product_cat' );
    return $terms ? end( $terms )->name : $category;
}, 10, 2 );

wc_ebit_Manufacturer

Fabricante. Padrão: espaço.

add_filter( 'wc_ebit_Manufacturer', function( $mfg, $product ) {
    return get_post_meta( $product->get_id(), '_manufacturer', true ) ?: $mfg;
}, 10, 2 );

wc_ebit_Brand

Marca. Padrão: espaço.

add_filter( 'wc_ebit_Brand', function( $brand, $product ) {
    $terms = wp_get_post_terms( $product->get_id(), 'pa_brand' );
    return $terms && ! is_wp_error( $terms ) ? $terms[0]->name : $brand;
}, 10, 2 );

wc_ebit_SubBrand

Submarca. Padrão: espaço.

add_filter( 'wc_ebit_SubBrand', function( $sub, $product ) {
    return get_post_meta( $product->get_id(), '_subbrand', true ) ?: $sub;
}, 10, 2 );

wc_ebit_productCondition

Condição do produto. Padrão: 0 (novo).

add_filter( 'wc_ebit_productCondition', fn() => 0 );

Metadados gerais

wc_ebit_lang

Idioma da pesquisa. Padrão: pt_BR.

wc_ebit_plataform

Código da plataforma. Padrão: 0.

wc_ebit_mktSaleID

ID da campanha de marketing associada à venda. Padrão: 0.

add_filter( 'wc_ebit_mktSaleID', fn() => 12345 );

Próximos passos

Foi útil?