Как получить ссылку на результат заказа (order) woocommerce

Ответ

Вот функция которая выдаст нужную ссылку при успешной оплате.

 /**
 * Вернем положительный результат работы оплаты и перенаправим пользоватлея
 *
 * @param obj $order - объект заказа
 */
 function payment_redirect($order) {
 // берем класс для рабы в вукомерс с оплатой
 $class_woo = new WC_Gateway_COD();
 // получим данные о платеже
 $url_redirect = $class_woo->get_return_url($order);
 //сосатвим массив
 $arr_json = array(
 "result" => "success",
 "redirect" => $url_redirect
 );
 // вернем правильный ответ в зависимости от типа запроса
 if (is_ajax()) { // если ajax
 echo json_encode($arr_json);
 //        echo '<!--WC_START-->{"result":"success","redirect":"' . addslashes($url_redirect) . '"}<!--WC_END-->';
 exit;
 } else {
 wp_redirect($url_redirect);
 exit;
 }
 wp_die();
 }
 

Функция работает как при ajax так и без него. В функцию нужно передать объект проведенного заказа $order.

Добавить Комментарий

Не совсем понятен вопрос, можете более подробно описать что вы делаете(для чего) и как происходит процесс.
В общих словах.

Если просто после выполнения кода сделать переадресацию на страницу, то это обычный php:
Можно так:

 header('Location: '.$newURL);
 

Или так, если вам нужно завершить работу остального кода:
 header("Location: ".$newURL);
 die();
 

Где, $newURL — ссылка на страницу.

Саму страницу вы можете создать в админке.

в 08.02.2016.
Добавить Комментарий

В общих словах я отправляю заказ через ордер, при успешной отправке хотелось бы перейти на страницу Спасибо за заказ! С описанием что где и куда.  http://сайт.ру/checkout/order-received/433?key=wc_order_56b7a1a22409a

Заказ происходит через checkout?

в 08.02.2016.
Добавить Комментарий

Ваш ответ

Размещая свой ответ, вы соглашаетесь с правилами сайта.