Alterar o status do pedido com AJAX no plugin wordpress
Redirecionamento Woocommerce para página personalizada dependendo do status do pedido
Redirecionar para outra página após alteração do status do pedido

add_action( 'woocommerce_thankyou', 'ak_javascript_redirect_from_the_thankyou_hook', 10, 1 );
function ak_javascript_redirect_from_the_thankyou_hook($order_id){

$order = wc_get_order($order_id); //<--check this line
$orderstatus = $order->get_status();

if (($orderstatus == 'completed')) {


echo '<p>Obrigado pelo seu pedido, você será redirecionado em 5 segundos.</p>';
$link_redirect = 'https://triks.digital/';
?>
<script>
document.addEventListener('DOMContentLoaded', function() {
setTimeout(function(){
window.location.href = '<?php echo $link_redirect; ?>';
}, 5000);
});
</script>
<?php
}
{ ?>

<?php }
}

Explicação Detalhada

  1. add_action(‘woocommerce_thankyou’, ‘ak_javascript_redirect_from_the_thankyou_hook’, 10, 1);
    Este código adiciona uma função ao gancho (hook) woocommerce_thankyou, que é executado quando o usuário é redirecionado para a página de agradecimento após finalizar um pedido. A função ak_javascript_redirect_from_the_thankyou_hook será chamada com a prioridade 10 e aceita um argumento ($order_id).
  2. function ak_javascript_redirect_from_the_thankyou_hook($order_id) {
    Define a função que será executada no gancho woocommerce_thankyou. Esta função aceita o ID do pedido como argumento.
  3. $order = wc_get_order($order_id);
    Obtém o objeto do pedido com base no ID do pedido fornecido.
  4. $orderstatus = $order->get_status();
    Obtém o status do pedido. Isso pode ser qualquer status, como ‘pending’, ‘processing’, ‘completed’, etc.
  5. if ($orderstatus == ‘completed’) {
    Verifica se o status do pedido é ‘completed’. Se for, o código dentro deste bloco será executado.
  6. echo ‘<p>Obrigado pelo seu pedido, você será redirecionado em 5 segundos.</p>’;
    Exibe uma mensagem de agradecimento ao usuário, informando que ele será redirecionado em 5 segundos.
  7. $link_redirect = ‘https://triks.digital/‘;
    Define a URL para onde o usuário será redirecionado.
  8. <script> … </script>
    Inclui um script JavaScript que será executado quando o documento estiver totalmente carregado.
    • document.addEventListener(‘DOMContentLoaded’, function() {
      Adiciona um ouvinte de evento que executa a função interna quando o DOM (Document Object Model) estiver completamente carregado.
    • setTimeout(function(){ window.location.href = ‘<?php echo $link_redirect; ?>’; }, 5000);
      Define um temporizador de 5 segundos (5000 milissegundos) e, após esse tempo, redireciona o navegador para a URL definida em $link_redirect.
  9. }
    Fecha o bloco if que verifica o status do pedido.

Este código é útil para redirecionar automaticamente os usuários para uma página específica (por exemplo, uma página de agradecimento personalizada ou uma página de promoções) após a conclusão de um pedido no WooCommerce.

To ligado que você!

gostou do post, seque lá no insta que direto solto conteúdo exclusivo no styores!

Redirecionar para outra página após alteração do status do pedido

Como criar unfold em qualquer item usando elementor

Fontes Condensadas

Como fazer um tratamento de pele profissional no Photoshop

13 fontes minimalistas gratuitas

Pack de Sombras para Stories- Download Free