Удалить продукт WooCommerce из корзины, если удален другой продукт ⇐ Php
Удалить продукт WooCommerce из корзины, если удален другой продукт
Я нашел это здесь: Удалите продукт A из корзины, если продукт B удален из корзины на WooCoomerce, который позволяет добавить продукт B, когда продукт A добавляется в корзину. Я использую фрагмент WPCode.
add_action('woocommerce_add_cart_item_data', функция($cart_item_data, $product_id) { //Если добавленный идентификатор продукта равен 67, то также добавьте продукт с идентификатором 15 если (67 == $product_id) { WC()->корзина->add_to_cart(15); } }, 10, 2 ); Однако данный ответ не работает, когда оба кода активны. У меня есть два отдельных фрагмента кода. Когда я добавляю товар А, это единственный товар в корзине. Сейчас он не добавляет Продукт Б. Должны ли оба кода быть в одном фрагменте (возможно)? Или просто не работает. Кроме того, мне нужно использовать идентификаторы, потому что я создал сайт электронного обучения, который не является WooCommerce (продукт A), но продукт B является продуктом WooCommerce. Для оформления заказа используется корзина WooCommerce.
add_action( 'woocommerce_remove_cart_item', 'jhall_remove_product_from_cart', 10, 2); /** * Удалите продукт с идентификатором 15, когда продукт с идентификатором 67 будет удален из корзины. * * @param $item_key * @param $cart * @return $item_key */ функция jhall_remove_product_from_cart($item_key, $cart){ //Получить идентификатор удаленного продукта $removed_id = $cart->cart_contents[$item_key]['product_id']; //Если идентификатор продукта равен 67 если ($removed_id === 67) { //Вам нужен ключ от корзины для продукта, который вы хотите удалить $remove_from_cart_product_id = $cart->generate_cart_id(15); //Удалить идентификатор продукта 15 из корзины $cart->remove_cart_item($remove_from_cart_product_id); }
Я нашел это здесь: Удалите продукт A из корзины, если продукт B удален из корзины на WooCoomerce, который позволяет добавить продукт B, когда продукт A добавляется в корзину. Я использую фрагмент WPCode.
add_action('woocommerce_add_cart_item_data', функция($cart_item_data, $product_id) { //Если добавленный идентификатор продукта равен 67, то также добавьте продукт с идентификатором 15 если (67 == $product_id) { WC()->корзина->add_to_cart(15); } }, 10, 2 ); Однако данный ответ не работает, когда оба кода активны. У меня есть два отдельных фрагмента кода. Когда я добавляю товар А, это единственный товар в корзине. Сейчас он не добавляет Продукт Б. Должны ли оба кода быть в одном фрагменте (возможно)? Или просто не работает. Кроме того, мне нужно использовать идентификаторы, потому что я создал сайт электронного обучения, который не является WooCommerce (продукт A), но продукт B является продуктом WooCommerce. Для оформления заказа используется корзина WooCommerce.
add_action( 'woocommerce_remove_cart_item', 'jhall_remove_product_from_cart', 10, 2); /** * Удалите продукт с идентификатором 15, когда продукт с идентификатором 67 будет удален из корзины. * * @param $item_key * @param $cart * @return $item_key */ функция jhall_remove_product_from_cart($item_key, $cart){ //Получить идентификатор удаленного продукта $removed_id = $cart->cart_contents[$item_key]['product_id']; //Если идентификатор продукта равен 67 если ($removed_id === 67) { //Вам нужен ключ от корзины для продукта, который вы хотите удалить $remove_from_cart_product_id = $cart->generate_cart_id(15); //Удалить идентификатор продукта 15 из корзины $cart->remove_cart_item($remove_from_cart_product_id); }
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Добавьте строку текста в таблицу итогов корзины на странице корзины в Woocommerce.
Anonymous » » в форуме Php - 0 Ответы
- 44 Просмотры
-
Последнее сообщение Anonymous
-