Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

201
Views
Woocommerce: agregue el pedido nuevamente en la página de agradecimiento

Estoy tratando de poner el botón Ordenar de nuevo en la página de agradecimiento pero no funciona, ¿qué hice mal?

Mi código en la página de agradecimiento

 <?php echo esc_url( $order_again_url ); ?>

En mi function.php estoy usando

 add_filter( 'woocommerce_valid_order_statuses_for_order_again', 'add_order_again_status', 10, 1); function add_order_again_status($array){ $array = array_merge($array, array('on-hold', 'processing', 'pending-payment', 'cancelled', 'refunded')); return $array; }
over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Reordenar solo permitido con estado de pedido -> completado. Si desea reordenar en la página de agradecimiento, primero debe permitir el estado para reordenar con en espera, pendiente, procesando, etc. como este:

 add_filter( 'woocommerce_valid_order_statuses_for_order_again', 'allowed_order_again_status', 10, 1); function allowed_order_again_status($array){ $array = array_merge($array, array('on-hold','pending', 'processing', 'completed')); return $array; }

Luego agregue el botón de reordenar usando ganchos de woocommerce_thankyou como este:

 add_filter( 'woocommerce_thankyou', 're_order_woocommerce_thankyou', 4 ); function re_order_woocommerce_thankyou($order_id) { $order = wc_get_order($order_id); if ( $order->has_status( 'completed' ) || $order->has_status( 'processing' ) || $order->has_status( 'pending' ) || $order->has_status( 'on-hold' ) ) { $actions['order-again'] = array( 'url' => wp_nonce_url( add_query_arg( 'order_again', $order->id ) , 'woocommerce-order_again' ), 'name' => __( 'Order Again', 'woocommerce' ) ); ?> <a class="btn btn-primary" href="<?php echo $actions['order-again']['url'];?>" ><?php echo $actions['order-again']['name'];?> </a> <?php return $order_id; } }

Nota: el botón Reordenar estará visible en la parte inferior de la página, pero si desea el botón Reordenar en cualquier posición en la página de agradecimiento, debe anular la página de agradecimiento simplemente copie del complemento de woocommerce y pase dentro de su tema activo -> woocommerce -> gracias.php y agregue botón de reordenar en consecuencia

over 4 years ago · Santiago Trujillo Report

0

Botón/enlace Reordenar para la página de mi cuenta -> pestaña de pedido como esta:

 add_filter( 'woocommerce_valid_order_statuses_for_order_again', 'allowed_order_again_status', 10, 1); function allowed_order_again_status($array){ $array = array_merge($array, array('on-hold','pending', 'processing', 'completed')); return $array; } add_filter( 'woocommerce_my_account_my_orders_actions', 'woo_order_again_from_myaccount', 50, 2 ); function woo_order_again_from_myaccount( $actions, $order ) { if ( $order->has_status( 'completed' ) || $order->has_status( 'processing' ) || $order->has_status( 'pending' ) || $order->has_status( 'on-hold' ) ) { $actions['order-again'] = array( 'url' => wp_nonce_url( add_query_arg( 'order_again', $order->id ) , 'woocommerce-order_again' ), 'name' => __( 'Order Again', 'woocommerce' ) ); } return $actions; }
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!