2016-05-12 8 views
0

Интересно, есть ли крючок для изменения поведения кнопки «Заказать заказ» после щелчка. Я пытаюсь заменить/изменить продукт после размещения заказа, так как выбор продукта (все доступные продукты) также находится на странице проверки.Woocommerce Hook для пользовательского поведения для заказа места

До сих пор я пытался манипулировать woocommerce_checkout_order_review крюком & не удалось.

add_action('woocommerce_checkout_order_review', 'remove_woocommerce_product'); 
function remove_woocommerce_product(){ 
    if (isset($_POST['woocommerce_checkout_place_order'])){ 

     global $woocommerce; 
     $woocommerce->cart->empty_cart(); // Empty the cart 

     $selectedproduct = $_POST['selectedproductid']; // Get the selected product 

     WC()->cart->add_to_cart($selectedproduct); // Insert the selected product in the the cart 
     return esc_url(wc_get_checkout_url()); // Redirect to Payment Gateway Page 
    } 
} 

Крючок сверху не запускается после заказа на место. Может быть, что-то не так с моим кодом, или, может быть, я подозреваю, что это неправильно. Есть идеи?

ответ

0

Nevermind ... нашел ответ ...

add_action('woocommerce_checkout_process', 'change_product_upon_submission'); 
function change_product_upon_submission() { 
    if (!empty($_POST['_wpnonce']) && !empty($_POST['selectedproductid'])) { 
    $selectedproduct = $_POST['selectedproductid']; // Get the selected product 
    WC()->cart->empty_cart(); //Empty the cart 
    WC()->cart->add_to_cart($selectedproduct); // Insert the selected product in the cart 
    } 
} 

Для более подробного объяснения, см Woocommerce Replace Product in Cart Upon Place Order in Checkout Page

 Смежные вопросы

  • Нет связанных вопросов^_^