下面的代码,在WooCommerce中购买后将客户重定向到自定义页面。在此自定义页面中,用户可以购买额外的项目(通过添加新项目修改订单):代码编辑
7vux5j2d1#
您可以尝试以下方法来避免收到订单时出现重定向问题:
add_action('woocommerce_checkout_order_created', 'set_wc_session_original_order_id'); function set_wc_session_original_order_id( $order ) { WC()->session->set('original_order_id', $order->get_id()); } add_action('template_redirect', 'custom_shop_order_process_redirects'); function custom_shop_order_process_redirects() { if ( is_page('upsell-1') && isset($_GET['woocommerce_checkout_place_order'])) { $order_id = WC()->session->get('original_order_id'); if ( $order_id > 0 ) { $order = wc_get_order($order_id); $order->add_product(wc_get_product('875')); $order->calculate_totals(); // Already includes save() method WC()->session->__unset('original_order_id'); // Remove session variable wp_redirect( $order->get_checkout_order_received_url() ); exit; } } elseif ( is_wc_endpoint_url('order-received') && WC()->session->__isset('original_order_id') ) { wp_redirect( home_url('/upsell-1') ); exit; } }
字符串应该能用
1条答案
按热度按时间7vux5j2d1#
您可以尝试以下方法来避免收到订单时出现重定向问题:
字符串
应该能用