FernandoAcosta.Netdocs

Referência de hooks (filtros e ações)

3 min de leituraAtualizado há 5 dias

Referência de hooks (filtros e ações)

Lista completa de filtros e ações expostos pelo plugin, agrupados por área. Cada um vem com assinatura, retorno e exemplo curto.

Disponibilidade do simulador

wcsp_is_available

Controla se o simulador é exibido para um produto específico.

add_filter( 'wcsp_is_available', function( $is_available, $product ) {
  return $is_available;
}, 10, 2 );
  • $is_available (bool) — valor atual.
  • $product (WC_Product) — produto avaliado.

Use pra ocultar em produtos específicos (categoria, SKU, tipo, preço). Veja Ocultar em produtos específicos.

Cálculo de preço

wcsp_credit_card_price

Modifica o preço usado como base do cartão de crédito antes da exibição.

add_filter( 'wcsp_credit_card_price', function( $price, $product ) {
  return $price;
}, 10, 2 );

wcsp_incash_price

Modifica o preço usado como base do desconto à vista antes da exibição.

add_filter( 'wcsp_incash_price', function( $price, $product ) {
  return $price;
}, 10, 2 );

A integração com Advanced Woo Discount Rules entra automaticamente neste filtro — se você empilha customizações, lembre que a regra do Discount Rules já passou.

wcsp_regular_price e wcsp_incash_price_final

Versões usadas no fim da cadeia para o preço regular (riscado, em promoção) e o preço final exibido. Use só se precisa intervir depois de todas as outras transformações.

Cálculo de juros

wcsp_is_interest_free

Controla se uma parcela específica é marcada como sem juros.

add_filter( 'wcsp_is_interest_free', function( $is_free, $total, $fee, $installment_fee, $i, $max_free ) {
  if ( $total > 1000 && $i <= 3 ) {
    return true;
  }
  return $is_free;
}, 10, 6 );

wc_installments_simulator_interest_free_amount

Modifica o valor individual de uma parcela sem juros (útil pra arredondar).

add_filter( 'wc_installments_simulator_interest_free_amount', function( $amount, $total, $i ) {
  return ceil( $amount * 2 ) / 2; // arredonda para 50 centavos
}, 10, 3 );

wcsp_dynamic_installments_limit

Limita quantas parcelas aparecem na tabela dinâmica.

add_filter( 'wcsp_dynamic_installments_limit', function() {
  return 6;
});

Configurações

wc_installments_simulator_settings

Modifica as configurações globalmente ou por produto. O filtro mais usado.

add_filter( 'wc_installments_simulator_settings', function( $settings, $product ) {
  if ( $product && has_term( 'eletronicos', 'product_cat', $product->get_id() ) ) {
    $settings['max_installments'] = 12;
    $settings['fee'] = 1.99;
  }
  return $settings;
}, 10, 2 );

Detalhes em Regras por categoria, tag ou preço.

wc_installments_simulator_cart_settings

Mesma ideia, mas aplicado especificamente quando o plugin renderiza no carrinho.

add_filter( 'wc_installments_simulator_cart_settings', function( $settings, $total, $amount_remove ) {
  return $settings;
}, 10, 3 );

wcsp_amount_to_remove_before_apply_incash_discount

Adiciona valores que devem ser excluídos do cálculo do desconto à vista (frete já tem opção própria nas configurações).

add_filter( 'wcsp_amount_to_remove_before_apply_incash_discount', function( $amount ) {
  return $amount + 10;
});

Ícones e exibição

wc_installments_simulator_icon

Substitui os SVGs de Pix, boleto ou cartão.

add_filter( 'wc_installments_simulator_icon', function( $icon, $type ) {
  if ( 'card' === $type ) {
    return '<svg>...</svg>';
  }
  return $icon;
}, 10, 2 );

Detalhes em Customizar ícones.

wcsp_handler

Substitui completamente o handler de exibição (Página do Produto vs. Listagem). Casos extremos.

add_filter( 'wcsp_handler', function( $handler, $product ) {
  return new MeuHandlerCustomizado();
}, 10, 2 );

wcsp_table_interest_label

Customiza o rótulo de juros em cada linha da tabela completa.

add_filter( 'wcsp_table_interest_label', function( $label, $installment ) {
  return sprintf( '+%.1f%% de juros', $installment['interest'] ?? 0 );
}, 10, 2 );

Assets (CSS e JS)

wcsp_style

Controla o enqueue do CSS — pode retornar false (desliga), true (default) ou uma URL de stylesheet customizado.

add_filter( 'wcsp_style', function() {
  return plugins_url( 'meu-css.css', __FILE__ );
});

// ou para desativar totalmente:
add_filter( 'wcsp_style', '__return_false' );

wcsp_script

Controla o enqueue do JavaScript.

add_filter( 'wcsp_script', 'is_product' ); // só carrega na página do produto

wcsp_script_dependencies

Adiciona/remove dependências do JS.

add_filter( 'wcsp_script_dependencies', function( $deps ) {
  $deps[] = 'meu-script-customizado';
  return $deps;
});

wcsp_script_params

Modifica os parâmetros localizados (objeto WCInstallmentsSimulatorParams no front).

add_filter( 'wcsp_script_params', function( $params ) {
  $params['minhaConfig'] = 'valor';
  return $params;
});

Schema markup

woocommerce_structured_data_product_offer

O plugin já hooka aqui pra injetar o preço com desconto. Você pode hookar depois (prioridade > 10) pra ajustar o que ele injetou.

rank_math/json_ld

Atualiza o schema do Rank Math. O plugin hooka automaticamente.

rank_math/opengraph/facebook/product_price_amount

Atualiza o preço do Open Graph. O plugin hooka automaticamente.

Integrações de feed

wcsp_feed_integrations

Registra integrações customizadas de feed.

add_filter( 'wcsp_feed_integrations', function( $integrations ) {
  $integrations[] = new MinhaFeedIntegration();
  return $integrations;
});

wcsp_feed_integrations_options

Adiciona opções no dropdown Plugins compatíveis.

add_filter( 'wcsp_feed_integrations_options', function( $options ) {
  $options['meu-feed'] = 'Meu Plugin de Feed';
  return $options;
});

Aplicação de desconto no checkout

woocommerce_cart_calculate_fees

Hook nativo do WooCommerce. O plugin hooka aqui via Gateway_Discount quando você configura Método com desconto. Não recomendamos hookar diretamente — prefira usar wcsp_amount_to_remove_before_apply_incash_discount ou wc_installments_simulator_settings pra ajustar o cálculo.

Próximos passos

Foi útil?