Установите цены на товары категории продуктов Woocommerce, когда в корзине находится определенный идентификатор продуктаPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Установите цены на товары категории продуктов Woocommerce, когда в корзине находится определенный идентификатор продукта

Сообщение Anonymous »

Я пытаюсь добиться следующего:
  • Покупатель добавляет в корзину товар 1 (из категории «Книги»), стоимость которого составляет 10 долларов США.
  • Затем он добавляет в корзину Товар 2.
Как сделать, если Товар 2 есть в наличии корзину, сделать Товар 1 = 0 $ и все добавленные товары из категории Книги 0 $?

Моя идея состоит в том, что если клиент покупает определенный продукт, все продукты данной категории становятся бесплатными.

На данный момент я получил это, но оно не работает и приводит к тому, что все товары в корзине стоят 0 долларов США.:

add_action( 'woocommerce_before_calculate_totals', 'change_price_if_6245_in_cart' );
function change_price_if_6245_in_cart( $cart_object ) {
if (woo_in_cartbooks (6245) ) {
// set our flag to be false until we find a product in that category
$cat_check = false;

// check each cart item for our category
foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {

$product = $cart_item['data'];

// replace 'books' with your category's slug
if ( has_term( 'books', 'product_cat', $product->id ) ) {
$cat_check = true;
// break because we only need one "true" to matter here
break;
}
}

// if a product in the cart is in our category, do something
if ( $cat_check ) {
// we have the category, do what we want
foreach ( $cart_object->get_cart() as $hash => $value ) {
$value['data']->set_price( 0 );
}
}
}


Подробнее здесь: https://stackoverflow.com/questions/502 ... t-id-is-in
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»