简体   繁体   中英

Redirect from Woocommerce to Php core with the Order ID in the URL

I am working on two websites ( WordPress/Woocommerce and PHP core). I don't know what I want to do is possible or not but I need your suggestions.

I want to redirect customer after a purchase from Woocommerce to PHP core website including the Order ID in the URL.

Is this possible or there is any other way to accomplish this task?

You can use Wordpress dedicated template_redirect hook to make a redirection after a purchase and pass any order data through the url like in this example:

add_action( 'template_redirect', 'order_received_redirection' );
function order_received_redirection() {
    // Only on "Order received" page
    if( is_wc_endpoint_url('order-received') ) {
        global $wp;
        $order_id  = absint( $wp->query_vars['order-received'] );
        $order = wc_get_order($order_id);
        $key = isset( $_GET['key'] ) ? wc_clean( $_GET['key'] ) : $order->get_order_key();
        $total = $order->get_total();

        // HERE BELOW Set your redirection url
        $url_redirect = 'http://www.my-domain.com/?orderid='.$order_id . '&key=' . $key . '&total=' . $total;

        // Redirect 
        wp_redirect( $url_redirect );
        exit(); // Always exit
    }
}

Code goes in functions.php file of your active child theme (active theme). Tested and works.

Related: How to get WooCommerce order details

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM