Процессор для массового добавления в корзину minishop2. Принимает значения ids - ID товаров.
core/components/custom/processors/web/cart/add.class.php
<?php
require_once MODX_CORE_PATH . 'model/modx/modprocessor.class.php';
class AddToCartCustom extends modProcessor
{
public $objectType = 'modResource';
public $classKey = 'modResource';
public function process()
{
$ids = $this->getProperty('ids');
if ($miniShop2 = $this->modx->getService('miniShop2')) {
// Инициализируем класс в текущий контекст
$miniShop2->initialize('web');
foreach ($ids as $id) {
$obj = $this->modx->getObject('msProduct', $id);
$nalichie = $obj->get('vnalich')[0];
if ($nalichie != 'Под заказ') {
$response = $miniShop2->cart->add($id, 1);
}
}
$data = $miniShop2->cart->status();
$response['data'] = $data;
$response['message'] = 'Количество товаров в корзине успешно изменено: ' . $data['total_count'];
return $this->success($response['message'], $data);
}
}
}
return 'AddToCartCustom';