2016-08-31 2 views
1

Я добавил пользовательское поле в woocommerce, у которого есть дополнительная цена фреймов для картин, теперь, если цена изображения составляет 10 $, а пользователь выбирает рамку, она будет складываться 5 $ допустим, и общая сумма составит 15 $.Добавление пользовательской цены с ценой продукта woocomerce в корзине и оформлении заказа

Теперь, если я добавлю другой товар, его выбирают пользовательскую цену кадра, следует добавить. например Продукт 1 цена: 10 $ и рам slected на нем: frame1 Whos цена 5 $ так общий будет 15 $ для этого продукта, и если Продукта 2 добавляются с ценой 10 $ и выбран frame2 с его цена составляет 6 $ всего этого продукта составит 16 $, однако GrandTotal будет 31 $
решение, которое находится рядом с тем, что я пытаюсь сделать, это:

add_filter('woocommerce_get_discounted_price', 'calculate_discounted_price', 10, 2); 

// Display the line total price 
add_filter('woocommerce_cart_item_subtotal', 'display_discounted_price', 10, 2); 

function calculate_discounted_price($price, $values) 
{ 

    $price += $_SESSION['framed_price']; 
    return $price; 

} 
    } 

Я храню t он отсчитывает значение в сеансе, и он обновляется каждый раз, когда пользователь нажимает на фрейм. Я использую ajax для этого и пока все не работает нормально. Я тоже получаю значения.
Эта функция в основном выполняет итерацию над добавленными продуктами и добавляет последнюю цену кадра каждому продукту в корзине.
Как мы можем добавить цену продукта с его собственной ценой?

ответ

1

я нашел ответ на этот вопрос, это решить вопрос:

// Change the line total price 
add_filter('woocommerce_get_discounted_price', 'calculate_discounted_price', 10, 2); 
// Display the line total price 
add_filter('woocommerce_cart_item_subtotal', 'display_discounted_price', 10, 2); 

function calculate_discounted_price($price, $values) { 
    // You have all your data on $values; 
    $price += 10; 
    return $price; 
} 

// wc_price => format the price with your own currency 
function display_discounted_price($values, $item) { 
    return wc_price($item[ 'line_total' ]); 
} 

Ссылка: woocommerce, how can i add additional cost in cart product total price?

+0

Этого код работает отлично подходит для установки пользовательской цены - я заметил, что в то время как промежуточный итог продукта и корзина Гранда общее число правильное, суммарный итог корзины по-прежнему отображает цену по умолчанию. Может ли это также быть обновлено, чтобы избежать путаницы? –

+0

hey @LouisW жаль, что я долгое время работал над wordpress, и я помню, что была проблема, которую я разобрал позже –

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