Referência dos principais filtros (apply_filters) e actions (do_action) expostos pelo Checkout Rishi. Use-os para customizar comportamento sem editar templates.
Esta seção é para desenvolvedores. O suporte oficial não cobre snippets customizados nem revisão de código personalizado. Teste tudo em staging antes de aplicar em produção.
Login
wc_smart_checkout_link_request_sent
Action disparada após o link mágico ser enviado por e-mail.
do_action( 'wc_smart_checkout_link_request_sent', $url, $user );
| Parâmetro | Tipo | Descrição |
|---|---|---|
$url |
string | URL completa do link mágico |
$user |
WP_User | Usuário que solicitou o link |
wc_smart_checkout_access_code_sent
Action disparada após o código de acesso de 6 dígitos ser enviado.
do_action( 'wc_smart_checkout_access_code_sent', $code, $user );
wc_smart_checkout_link_request_error
Action disparada quando ocorre erro no envio do link/código.
do_action( 'wc_smart_checkout_link_request_error', $error, $email );
wc_smart_checkout_do_not_restore_cart_on_access_link
Filter para impedir que o carrinho seja restaurado quando o cliente clica no link mágico.
add_filter( 'wc_smart_checkout_do_not_restore_cart_on_access_link', '__return_true' );
Order Bump
wc_smart_checkout_disable_order_bump_for_pay_page
Filter que controla se o Order Bump aparece na página de pagar pedido pública. Default: true (desabilitado).
add_filter( 'wc_smart_checkout_disable_order_bump_for_pay_page', '__return_false' );
wc_smart_checkout_customize_order_bump_fields / _sections
Filters para adicionar campos e seções no Customizer da configuração do Order Bump.
add_filter( 'wc_smart_checkout_customize_order_bump_sections', function( $sections ) {
$sections['minha_secao'] = [
'title' => 'Minha seção',
'priority' => 50,
];
return $sections;
});
Pagamento
wc_smart_checkout_payment_layout
Filter que controla o layout de pagamento (cards ou padrão).
add_filter( 'wc_smart_checkout_payment_layout', function() {
return 'cards';
});
wc_smart_checkout_gateway_icon
Filter para customizar o ícone exibido para cada gateway.
add_filter( 'wc_smart_checkout_gateway_icon', function( $icon, $gateway ) {
if ( $gateway->id === 'interpix' ) {
return '<span class="gateway-badge">Imediato!</span>';
}
return $icon;
}, 100, 2 );
wc_smart_checkout_payment_methods_list
Filter para modificar a lista de gateways exibida.
add_filter( 'wc_smart_checkout_payment_methods_list', function( $methods ) {
// remove gateways que você não quer exibir
return $methods;
});
wc_smart_checkout_credit_card_icon_keys
Filter para customizar quais bandeiras de cartão aparecem.
add_filter( 'wc_smart_checkout_credit_card_icon_keys', function( $keys ) {
$keys[] = 'elo';
return $keys;
});
wc_smart_checkout_payment_discounts_apply_discount
Filter sobre o valor calculado de desconto por gateway.
add_filter( 'wc_smart_checkout_payment_discounts_apply_discount', function( $value, $cart ) {
// ajustar o valor do desconto antes de aplicar
return $value;
}, 10, 2 );
wc_smart_checkout_gateway_discounts_settings
Filter sobre as configurações de desconto por gateway.
Páginas de Pix e boleto
wc_smart_checkout_order_details_bank_slip_page
Filter para mostrar os detalhes do pedido na página de boleto. Default: false.
add_filter( 'wc_smart_checkout_order_details_bank_slip_page', '__return_true' );
Checkout
wc_smart_checkout_checkout_result
Filter sobre o resultado do checkout (após processamento).
add_filter( 'wc_smart_checkout_checkout_result', function( $result ) {
return $result;
});
wc_smart_checkout_label_overlay
Filter sobre o estilo de label (overlay vs default).
wc_smart_checkout_default_logged_in_step
Filter sobre qual etapa exibir por padrão para clientes logados. Default: 'shipping_address'.
add_filter( 'wc_smart_checkout_default_logged_in_step', function() {
return 'payment';
});
wc_smart_checkout_cart_total
Filter sobre o total do carrinho exibido no checkout.
add_filter( 'wc_smart_checkout_cart_total', function( $total, $cart ) {
return $total;
}, 10, 2 );
wc_smart_checkout_allow_item_quantity_change
Filter sobre se o cliente pode alterar a quantidade de um item no checkout.
add_filter( 'wc_smart_checkout_allow_item_quantity_change', function( $allow, $item ) {
return $allow;
}, 10, 2 );
wc_smart_checkout_quantity_input_min
Filter sobre quantidade mínima permitida (use 0 para permitir remover).
add_filter( 'wc_smart_checkout_quantity_input_min', '__return_zero' );
Endereço e frete
wc_smart_checkout_restrict_address_fields_length
Filter para controlar a limitação de tamanho dos campos número e complemento.
add_filter( 'wc_smart_checkout_restrict_address_fields_length', '__return_false' );
wc_smart_checkout_economic_express_selected_rates
Filter sobre as taxas de frete selecionadas (econômica/expressa).
add_filter( 'wc_smart_checkout_economic_express_selected_rates', function( $rates, $package ) {
return $rates;
}, 10, 2 );
Personalização visual
wc_smart_checkout_after_header
Action para inserir conteúdo após o cabeçalho do checkout.
add_action( 'wc_smart_checkout_after_header', function() {
echo '<div class="banner">Frete grátis acima de R$ 200</div>';
});
wc_smart_checkout_head
Action para inserir conteúdo no <head> da página do checkout.
add_action( 'wc_smart_checkout_head', function() {
echo '<script>console.log("checkout carregado");</script>';
});
wc_smart_checkout_custom_style_url
Filter para carregar um arquivo CSS externo no checkout.
add_filter( 'wc_smart_checkout_custom_style_url', function() {
return 'https://example.com/style.css';
});
wc_smart_checkout_custom_script_url
Filter para carregar um arquivo JS externo no checkout.
add_filter( 'wc_smart_checkout_custom_script_url', function() {
return 'https://example.com/main.js';
});
wc_smart_checkout_main_style_url
Filter para substituir o estilo principal do checkout.
add_filter( 'wc_smart_checkout_main_style_url', function() {
return 'https://example.com/main-style.css';
});
wc_smart_checkout_load_font
Filter para desativar o carregamento da fonte customizada.
add_filter( 'wc_smart_checkout_load_font', '__return_false' );
wc_smart_checkout_order_items_thumbnail
Filter sobre a imagem dos itens no resumo do pedido.
add_filter( 'wc_smart_checkout_order_items_thumbnail', function( $image, $cart_item ) {
// customizar a imagem do item
return $image;
}, 100, 2 );
Customizer
Cada seção do Customizer expõe dois filters: _fields e _sections. Eles permitem adicionar opções customizadas.
wc_smart_checkout_customize_general_fields/_sectionswc_smart_checkout_customize_advanced_fields/_sectionswc_smart_checkout_customize_login_fields/_sectionswc_smart_checkout_customize_testimonials_fields/_sectionswc_smart_checkout_customize_urgency_fields/_sectionswc_smart_checkout_customize_buttons_fields/_sectionswc_smart_checkout_customize_footer_fields/_sectionswc_smart_checkout_customize_header_fields/_sections
Exemplo:
add_filter( 'wc_smart_checkout_customize_general_fields', function( $fields ) {
$fields['minha_opcao'] = [
'type' => 'text',
'label' => 'Minha opção',
'section' => 'smart_checkout_general',
];
return $fields;
});
Encontrar a origem de funções
Snippet útil para descobrir onde uma função foi definida (útil em conflitos):
if ( class_exists( 'ReflectionFunction' ) ) {
$reflFunc = new ReflectionFunction( 'woocommerce_checkout_coupon_form' );
echo $reflFunc->getFileName() . ':' . $reflFunc->getStartLine();
}
Veja também Snippets úteis e Tag de conversão.