He estado probando durante más de una hora, pero finalmente encontré una manera de hacer que esto funcione. Cuando esté en la vista de «Editar orden» en Panel de WordPress> WooCommerce> Pedidoshay un menú desplegable de «acciones de orden»: «Factura de correo electrónico«,»Reenviar la notificación de nuevo pedido«, etc.
Un problema importante que siempre tuve mientras solucionaba o trabajaba en la página de agradecimiento de WooCommerce era que tenía que construir esa URL a mano para verla nuevamente (sigue el formato https://example.com/checkout/order-reCeived/123456/?key=wc_order_abcdefghijklmn). Además, quería evitar colocar pedidos de prueba adicionales.
Bueno, a partir de hoy, puedes Acceda a la página de agradecimiento del cliente directamente desde el menú desplegable «Acciones de pedido».
¡Disfrutar!
Php Snippet: Agregar «Ver página de agradecimiento» a «Ordenar acciones» @ Editar página de administración de un solo pedido
Nota: Elimine $ orden-> has_status () verifique si desea que esto aparezca para todos los estados de pedido.
/** * @snippet View Thank You Page @ Edit Order Admin * @how-to businessbloomer.com/woocommerce-customization * @author Rodolfo Melogli, Business Bloomer * @compatible WooCommerce 9 * @community https://businessbloomer.com/club/ */ add_filter( 'woocommerce_order_actions', 'bbloomer_show_thank_you_page_order_admin_actions', 9999, 2 ); function bbloomer_show_thank_you_page_order_admin_actions( $actions, $order ) { if ( $order->has_status( wc_get_is_paid_statuses() ) ) { $actions['view_thankyou'] = 'Display thank you page'; } return $actions; } add_action( 'woocommerce_order_action_view_thankyou', 'bbloomer_redirect_thank_you_page_order_admin_actions' ); function bbloomer_redirect_thank_you_page_order_admin_actions( $order ) { $url = add_query_arg( 'adm', $order->get_customer_id(), $order->get_checkout_order_received_url() ); add_filter( 'redirect_post_location', function() use ( $url ) { return $url; }); } add_filter( 'determine_current_user', 'bbloomer_admin_becomes_user_if_viewing_thank_you_page' ); function bbloomer_admin_becomes_user_if_viewing_thank_you_page( $user_id ) { if ( ! empty( $_GET['adm'] ) ) { $user_id = wc_clean( wp_unslash( $_GET['adm'] ) ); } return $user_id; } add_filter( 'woocommerce_order_received_verify_known_shoppers', '__return_false' );