frontend_order_cart_add_before

Срабатывает перед добавлением в корзину новой позиции на странице оформления заказа в корзине.

Доступно начиная с версии 8.0.0.

Shop-Script

Входящие параметры (передаются по ссылке)

$params['new_item'] array Свойства добавленной позиции в виде массива со следующими ключами:
$params['new_item']['product_id'] int ID товара.
$params['new_item']['sku_id'] int ID модификации товара.
$params['new_item']['quantity'] float Количество в корзине.
$params['new_item']['service_id'] int|null ID услуги.
$params['new_item']['service_variant_id'] int|null ID варианта услуги.
$params['new_item']['type'] string Тип позиции: 'product' (товар), 'service' (услуга).
$params['new_item']['id'] int ID позиции.
$params['errors'] array Сообщения об ошибках. Плагин может добавить собственные сообщения в этот список.
… код плагина …

Результат работы плагина

Shop-Script

Пример кода плагина

PHP

public function frontendOrderCartAddBefore(&$params)
{
    waLog::dump($params, 'shop/plugins/' . $this->id . '/frontend-order-cart-add-before.log');
    $params['errors'][] = _wp('Error message from my plugin.');
}