Как в woocommerce добавить товар в корзину с помощью кода?

Решено

Здравствуйте, подскажите пожалуйста как можно с помощью кода, или автоматически добавить пользователю товар в корзину. Я использую плагин для вордпресс woocommerce. И хотел бы сделать на своем сайте подарок пользователям в виде бесплатного товара в их корзине.

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

Приведу пример как можно добавить товар с id 68 при загрузки любой страницы вордпресс.
Товар добавится для каждого пользователя кроме администратора

 /*
 * Add item to cart on visit
 */
 function add_product_to_cart() {
 if ( ! is_admin() ) {
 global $woocommerce;
 $product_id = 64;
 $found = false;
 //check if product already in cart
 if ( sizeof( $woocommerce->cart->get_cart() ) > 0 ) {
 foreach ( $woocommerce->cart->get_cart() as $cart_item_key => $values ) {
 $_product = $values['data'];
 if ( $_product->id == $product_id )
 $found = true;
 }
 // if product not found, add it
 if ( ! $found )
 $woocommerce->cart->add_to_cart( $product_id );
 } else {
 // if no products in cart, add it
 $woocommerce->cart->add_to_cart( $product_id );
 }
 }
 }
 add_action( 'init', 'add_product_to_cart' );
 

Удалив или заменив экшен add_action( ‘init’, ‘add_product_to_cart’ ); — вы можете вызывать функцию на свои события

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

а как мне его отправить еще сразу в Заказы?
создать Order

Если у вас не через checkout, то после отправки формы или что у вас там переберите все продукты из корзины и затем очистите корзину.
Получить данные из корзины:


global $woocommerce;

$cart = $woocommerce->cart->get_cart()

Затем проверяем есть ли $cart и если есть делаем foreach. Получаем id продуктов и добавляем в корзину.

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

как отправить все в Order, то что получаю тут?

$woocommerce->cart->get_cart()
Добавить Комментарий

Ваш ответ

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