Arquivos WooCommerce - Eduardo Villão - PT-BR Desenvolvedor WordPress Fri, 24 Feb 2023 04:05:29 +0000 pt-BR hourly 1 https://wordpress.org/?v=6.4.4 https://eduardovillao.me/pt-br/wp-content/uploads/sites/2/2023/02/cropped-coding-32x32.png Arquivos WooCommerce - Eduardo Villão - PT-BR 32 32 Executar ação após o pagamento ser confirmado no WooCommerce https://eduardovillao.me/pt-br/executar-acao-apos-o-pagamento-ser-confirmado-no-woocommerce/ https://eduardovillao.me/pt-br/executar-acao-apos-o-pagamento-ser-confirmado-no-woocommerce/#respond Wed, 22 Feb 2023 03:54:04 +0000 https://eduardovillao.me/pt-br/?p=294 Ai chega aquele requisito de executar uma ação apenas após a confirmação de pagamento do pedido (através do WooCommerce, é claro), como é que faz? Há algum tempo atrás precisei fazer isso e achei aqui nas minhas anotações esses dias, então resolvi compartilhar! O WooCommerce já tem uma action prontinha pra gente utilizar, e ela […]

O post Executar ação após o pagamento ser confirmado no WooCommerce apareceu primeiro em Eduardo Villão - PT-BR.

]]>
Ai chega aquele requisito de executar uma ação apenas após a confirmação de pagamento do pedido (através do WooCommerce, é claro), como é que faz?

Há algum tempo atrás precisei fazer isso e achei aqui nas minhas anotações esses dias, então resolvi compartilhar!

O WooCommerce já tem uma action prontinha pra gente utilizar, e ela recebe o parâmetro da id do pedido que foi atualizado. Com isso, sempre que o seu gateway de pagamento enviar a info que o pagamento está ok esse gancho vai ser executado e você pode pendurar nele a ação que quiser.

No exemplo abaixo estou fazendo a atualização de algum campo do usuário, mas você pode fazer o que quiser.

function checkPayment( $order_id ) {
    $order = new WC_Order( $order_id );  
    /**
    * Faça o que você quiser aqui!
    * Exemplo atualizando dados do usuário após a confirmação do pagamento.
    */
    $user_id = $order->get_user_id();
    update_user_meta( $user_id, 'field_name', 'field_value' );    
}

add_action( 'woocommerce_payment_complete', 'checkPayment' );

Importante: essa action é executada se o método de pagamento executar woocommerce_payment_complete() ou $order->payment_complete(). A maioria faz isso, pois é um comportamento padrão/recomendado ao registrar métodos de pagamento. Mas vale a pena o lembrete.

Testa ai e me conta nos comentários!

Até a próxima!

O post Executar ação após o pagamento ser confirmado no WooCommerce apareceu primeiro em Eduardo Villão - PT-BR.

]]>
https://eduardovillao.me/pt-br/executar-acao-apos-o-pagamento-ser-confirmado-no-woocommerce/feed/ 0