Сделать заказ программно. Minishop2

Друзья, подскажите, как можно создать заказ в минишопе через api?
Женя Савцов
19 января 2017, 16:12
modx.pro
4
3 693
0

Комментарии: 1

Владимир Бабусенко
20 января 2017, 15:44
2
+3
Недавно была такая задача.
<?php
$prodID = $_POST['prodID']; //id продуктов
$quantity = $_POST['quantity']; //количество продукта

//MiniShop2
$miniShop2 = $modx->getService('minishop2','miniShop2', MODX_CORE_PATH . 'components/minishop2/model/minishop2/', $scriptProperties);
        if (!($miniShop2 instanceof miniShop2)) return;
        // Инициализируем класс в текущий контекст
        $miniShop2->initialize($modx->context->key, $scriptProperties);

        //Очистим корзину и заказ
        $miniShop2->cart->clean();
        $miniShop2->order->clean();
        //Новые данные заказа
        $miniShop2->order->add('delivery',1); //доставка самовывоз
        $miniShop2->order->add('payment',1); //новый-неоплаченный
        $miniShop2->order->add('email', 'email'); 
        $miniShop2->order->add('comment',$_POST['comment']); //можно комментарий добавить

// Добавляем товары в корзину, если надо
foreach ($prodID as $k => $v){
     //Добавляем товары в корзину
    $miniShop2->cart->add($v, $quantity[$k]); //(id товара, кол-во товара)
}

//Формируем заказ
$miniShop2->order->submit();
При таком все события вызываются, письма отправляются.
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    1