shipping_package
Позволяет рассчитать компактные габариты и общий вес заказа с учетом упаковки для передачи плагинам доставки.
Доступно начиная с версии 8.0.0.
Shop-Script
Входящие параметры (передаются по ссылке)
$items array Список позиций заказа. Каждый элемент списка — массив со следующими ключами:
$items[]['cart_item_id'] int ID позиции корзины.
$items[]['type'] string Тип позиции: 'product' (товар), 'service' (услуга).
$items[]['name'] string Название позиции заказа.
$items[]['service_id'] int|null ID заказанной услуги.
$items[]['service_variant_id'] int|null ID варианта заказанной услуги.
$items[]['price'] float Стоимость позиции заказа.
$items[]['quantity'] float Количество позиции заказа.
$items[]['product_id'] int ID товара, которому соответствует позиция заказа.
$items[]['sku_id'] int ID модификации товара, которой соответствует позиция заказа.
$items[]['stock_id'] int|null ID склада, выбранного для списания остатков заказанного товара.
$items[]['purchase_price'] float Закупочная цена заказанного товара.
$items[]['sku_code'] string Код артикула модификации товара, которой соответствует позиция заказа.
$items[]['sku_name'] string Название артикула модификации товара, которой соответствует позиция заказа.
$items[]['quantity_denominator'] int Доступная точность указания складских остатков заказанного товара: 1 (целые штуки), 10 (точность до десятых), 100 (точность до сотых), 1000 (точность до тысячных).
$items[]['tax_id'] int ID налога, применённого к товару.
$items[]['total_discount'] float Размер скидки, применённой к заказанному товару.
$items[]['currency'] string 3-буквенный код валюты товара.
$items[]['discount_description'] string Описание применённой скидки.
$items[]['weight'] float Вес позиции в основной единице измерения веса.
$items[]['length'] float Длина позиции в основной единице измерения.
$items[]['width'] float Ширина позиции в основной единице измерения.
$items[]['height'] float Высота позиции в основной единице измерения.
$items[]['sku'] array Свойства модификации (для позиций-товаров) в виде массива со следующими ключами:
$items[]['sku']['id'] int ID модификации.
$items[]['sku']['name'] string Наименование.
$items[]['sku']['summary'] string Краткое описание.
$items[]['sku']['sku'] string Код артикула.
$items[]['sku']['image_id'] int ID основного изображения.
$items[]['sku']['price'] float Цена.
$items[]['sku']['purchase_price'] float Закупочная цена.
$items[]['sku']['compare_price'] float Зачёркнутая цена.
$items[]['sku']['count'] float|null Общее количество на складе всех модификаций. Значение
$items[]['sku']['stock_base_ratio'] float Соотношение между складской и базовой единицами измерения количества.
$items[]['sku']['order_count_min'] float Минимальное количество товара в заказе.
$items[]['sku']['order_count_step'] float Значение изменения количества кнопками «+/-».
$items[]['sku']['file_name'] string Имя загруженного файла.
$items[]['service'] array Свойства услуги (для позиций-услуг) в виде массива со следующими ключами:
$items[]['service']['id'] int ID услуги.
$items[]['service']['name'] string Название.
$items[]['service']['price'] float Цена, указанная в настройках услуги.
$items[]['service']['currency'] string 3-буквенный код валюты из настроек услуги. Или '%', если это значение выбрано вместо валюты.
$items[]['service']['tax_id'] int ID налога из настроек услуги.
$items[]['service_variant'] array Свойства услуги (для позиций-услуг) в виде массива со следующими ключами:
$items[]['service_variant']['id'] int ID варианта услуги.
$items[]['service_variant']['service_id'] int ID услуги.
$items[]['service_variant']['price'] float Цена из настроек варианта услуги.
$items[]['parent_item'] array Свойства позиции-товара, к которой относится услуга (для позиций-услуг) в виде массива со следующими ключами:
$items[]['parent_item']['cart_item_id'] int ID позиции-товара.
$items[]['parent_item']['price'] float Цена позиции-товара.
$items[]['parent_item']['quantity'] float Количество позиции-товара.
$items[]['parent_item']['product_id'] int ID товара.
$items[]['parent_item']['sku_id'] int ID модификации товара.
$items[]['parent_item']['name'] string Название позиции-товара.
$items[]['parent_item']['sku_code'] string Код артикула.
$items[]['parent_item']['sku_name'] string Название артикула.
$items[]['parent_item']['tax_id'] int ID применённого налога.
$items[]['product'] array Свойства товара в виде массива со следующими ключами:
$items[]['product']['id'] int ID товара.
$items[]['product']['name'] string Наименование.
$items[]['product']['summary'] string Краткое описание.
$items[]['product']['meta_title'] string Значение элемента TITLE страницы товара.
$items[]['product']['meta_keywords'] string Значение метатега keywords.
$items[]['product']['meta_description'] string Значение метатега description.
$items[]['product']['description'] string Полное описание.
$items[]['product']['contact_id'] int ID контакта пользователя, добавившего товар.
$items[]['product']['create_datetime'] datetime Дата и время создания товара.
$items[]['product']['edit_datetime'] datetime Дата и время последнего обновления товара.
$items[]['product']['status'] int Обозначение статуса товара: -1 (снят с публикации), 0 (скрыт), 1 (опубликован).
$items[]['product']['type_id'] int ID типа товара.
$items[]['product']['image_id'] int ID основного изображения.
$items[]['product']['video_url'] string Ссылка на видеоролик.
$items[]['product']['sku_id'] int ID основной модификации.
$items[]['product']['url'] int Редактируемая часть URL страницы товара на витрине.
$items[]['product']['rating'] float Рейтинг товара по результатам его оценки покупателями.
$items[]['product']['price'] float Цена.
$items[]['product']['compare_price'] float Зачёркнутая цена.
$items[]['product']['currency'] string Обозначение валюты товара в формате ISO 4217.
$items[]['product']['min_price'] float Минимальная цена модификации.
$items[]['product']['max_price'] float Максимальная цена модификации.
$items[]['product']['tax_id'] int ID выбранного налогового правила или 0, если правило не выбрано.
$items[]['product']['count'] float|null Общее количество на складе всех модификаций. Значение
$items[]['product']['count_denominator'] int Доступная точность указания складских остатков товара. Возможные значения: 1 (целые штуки), 10 (точность до десятых), 100 (точность до сотых), 1000 (точность до тысячных).
$items[]['product']['order_multiplicity_factor'] float Шаг (кратность) добавления в корзину.
$items[]['product']['stock_unit_id'] int ID выбранной складской единицы измерения количества.
$items[]['product']['base_unit_id'] int ID выбранной базовой единицы измерения количества.
$items[]['product']['stock_base_ratio'] float Соотношение между складской и базовой единицами измерения количества.
$items[]['product']['order_count_min'] float Минимальное количество товара в заказе.
$items[]['product']['order_count_step'] float Значение изменения количества кнопками «+/-».
$items[]['product']['cross_selling'] int Режим отображения сопутствующих товаров: 0 (выключено), 1 (включено показывать в соответствии с настройками типа товаров), 2 (включено показывать выбранные вручную рекомендуемые товары).
$items[]['product']['upselling'] int Режим отображения схожих и альтернативных товаров: 0 (выключено), 1 (включено показывать в соответствии с настройками типа товаров), 2 (включено показывать выбранные вручную рекомендуемые товары).
$items[]['product']['rating_count'] int Количество отзывов о товаре.
$items[]['product']['total_sales'] float Общая сумма продаж товара, выраженная в основной валюте магазина,.
$items[]['product']['category_id'] int ID основной категории.
$items[]['product']['badge'] string Обозначение одной из стандартных наклеек либо HTML собственной наклейки для изображений.
$items[]['product']['sku_type'] int Тип выбора модификаций товара на витрине: 0 (по наименованиям артикулов), 1 (по значениям характеристик).
$items[]['product']['sku_count'] int Количество модификаций.
$items[]['cart_item_id'] int ID позиции корзины.
$items[]['type'] string Тип позиции: 'product' (товар), 'service' (услуга).
$items[]['name'] string Название позиции заказа.
$items[]['service_id'] int|null ID заказанной услуги.
$items[]['service_variant_id'] int|null ID варианта заказанной услуги.
$items[]['price'] float Стоимость позиции заказа.
$items[]['quantity'] float Количество позиции заказа.
$items[]['product_id'] int ID товара, которому соответствует позиция заказа.
$items[]['sku_id'] int ID модификации товара, которой соответствует позиция заказа.
$items[]['stock_id'] int|null ID склада, выбранного для списания остатков заказанного товара.
$items[]['purchase_price'] float Закупочная цена заказанного товара.
$items[]['sku_code'] string Код артикула модификации товара, которой соответствует позиция заказа.
$items[]['sku_name'] string Название артикула модификации товара, которой соответствует позиция заказа.
$items[]['quantity_denominator'] int Доступная точность указания складских остатков заказанного товара: 1 (целые штуки), 10 (точность до десятых), 100 (точность до сотых), 1000 (точность до тысячных).
$items[]['tax_id'] int ID налога, применённого к товару.
$items[]['total_discount'] float Размер скидки, применённой к заказанному товару.
$items[]['currency'] string 3-буквенный код валюты товара.
$items[]['discount_description'] string Описание применённой скидки.
$items[]['weight'] float Вес позиции в основной единице измерения веса.
$items[]['length'] float Длина позиции в основной единице измерения.
$items[]['width'] float Ширина позиции в основной единице измерения.
$items[]['height'] float Высота позиции в основной единице измерения.
$items[]['sku'] array Свойства модификации (для позиций-товаров) в виде массива со следующими ключами:
$items[]['sku']['id'] int ID модификации.
$items[]['sku']['name'] string Наименование.
$items[]['sku']['summary'] string Краткое описание.
$items[]['sku']['sku'] string Код артикула.
$items[]['sku']['image_id'] int ID основного изображения.
$items[]['sku']['price'] float Цена.
$items[]['sku']['purchase_price'] float Закупочная цена.
$items[]['sku']['compare_price'] float Зачёркнутая цена.
$items[]['sku']['count'] float|null Общее количество на складе всех модификаций. Значение
null означает, что для некоторых модификаций товара указано бесконечное количество на складе.$items[]['sku']['stock_base_ratio'] float Соотношение между складской и базовой единицами измерения количества.
$items[]['sku']['order_count_min'] float Минимальное количество товара в заказе.
$items[]['sku']['order_count_step'] float Значение изменения количества кнопками «+/-».
$items[]['sku']['file_name'] string Имя загруженного файла.
$items[]['service'] array Свойства услуги (для позиций-услуг) в виде массива со следующими ключами:
$items[]['service']['id'] int ID услуги.
$items[]['service']['name'] string Название.
$items[]['service']['price'] float Цена, указанная в настройках услуги.
$items[]['service']['currency'] string 3-буквенный код валюты из настроек услуги. Или '%', если это значение выбрано вместо валюты.
$items[]['service']['tax_id'] int ID налога из настроек услуги.
$items[]['service_variant'] array Свойства услуги (для позиций-услуг) в виде массива со следующими ключами:
$items[]['service_variant']['id'] int ID варианта услуги.
$items[]['service_variant']['service_id'] int ID услуги.
$items[]['service_variant']['price'] float Цена из настроек варианта услуги.
$items[]['parent_item'] array Свойства позиции-товара, к которой относится услуга (для позиций-услуг) в виде массива со следующими ключами:
$items[]['parent_item']['cart_item_id'] int ID позиции-товара.
$items[]['parent_item']['price'] float Цена позиции-товара.
$items[]['parent_item']['quantity'] float Количество позиции-товара.
$items[]['parent_item']['product_id'] int ID товара.
$items[]['parent_item']['sku_id'] int ID модификации товара.
$items[]['parent_item']['name'] string Название позиции-товара.
$items[]['parent_item']['sku_code'] string Код артикула.
$items[]['parent_item']['sku_name'] string Название артикула.
$items[]['parent_item']['tax_id'] int ID применённого налога.
$items[]['product'] array Свойства товара в виде массива со следующими ключами:
$items[]['product']['id'] int ID товара.
$items[]['product']['name'] string Наименование.
$items[]['product']['summary'] string Краткое описание.
$items[]['product']['meta_title'] string Значение элемента TITLE страницы товара.
$items[]['product']['meta_keywords'] string Значение метатега keywords.
$items[]['product']['meta_description'] string Значение метатега description.
$items[]['product']['description'] string Полное описание.
$items[]['product']['contact_id'] int ID контакта пользователя, добавившего товар.
$items[]['product']['create_datetime'] datetime Дата и время создания товара.
$items[]['product']['edit_datetime'] datetime Дата и время последнего обновления товара.
$items[]['product']['status'] int Обозначение статуса товара: -1 (снят с публикации), 0 (скрыт), 1 (опубликован).
$items[]['product']['type_id'] int ID типа товара.
$items[]['product']['image_id'] int ID основного изображения.
$items[]['product']['video_url'] string Ссылка на видеоролик.
$items[]['product']['sku_id'] int ID основной модификации.
$items[]['product']['url'] int Редактируемая часть URL страницы товара на витрине.
$items[]['product']['rating'] float Рейтинг товара по результатам его оценки покупателями.
$items[]['product']['price'] float Цена.
$items[]['product']['compare_price'] float Зачёркнутая цена.
$items[]['product']['currency'] string Обозначение валюты товара в формате ISO 4217.
$items[]['product']['min_price'] float Минимальная цена модификации.
$items[]['product']['max_price'] float Максимальная цена модификации.
$items[]['product']['tax_id'] int ID выбранного налогового правила или 0, если правило не выбрано.
$items[]['product']['count'] float|null Общее количество на складе всех модификаций. Значение
null означает, что для некоторых модификаций товара указано бесконечное количество на складе.$items[]['product']['count_denominator'] int Доступная точность указания складских остатков товара. Возможные значения: 1 (целые штуки), 10 (точность до десятых), 100 (точность до сотых), 1000 (точность до тысячных).
$items[]['product']['order_multiplicity_factor'] float Шаг (кратность) добавления в корзину.
$items[]['product']['stock_unit_id'] int ID выбранной складской единицы измерения количества.
$items[]['product']['base_unit_id'] int ID выбранной базовой единицы измерения количества.
$items[]['product']['stock_base_ratio'] float Соотношение между складской и базовой единицами измерения количества.
$items[]['product']['order_count_min'] float Минимальное количество товара в заказе.
$items[]['product']['order_count_step'] float Значение изменения количества кнопками «+/-».
$items[]['product']['cross_selling'] int Режим отображения сопутствующих товаров: 0 (выключено), 1 (включено показывать в соответствии с настройками типа товаров), 2 (включено показывать выбранные вручную рекомендуемые товары).
$items[]['product']['upselling'] int Режим отображения схожих и альтернативных товаров: 0 (выключено), 1 (включено показывать в соответствии с настройками типа товаров), 2 (включено показывать выбранные вручную рекомендуемые товары).
$items[]['product']['rating_count'] int Количество отзывов о товаре.
$items[]['product']['total_sales'] float Общая сумма продаж товара, выраженная в основной валюте магазина,.
$items[]['product']['category_id'] int ID основной категории.
$items[]['product']['badge'] string Обозначение одной из стандартных наклеек либо HTML собственной наклейки для изображений.
$items[]['product']['sku_type'] int Тип выбора модификаций товара на витрине: 0 (по наименованиям артикулов), 1 (по значениям характеристик).
$items[]['product']['sku_count'] int Количество модификаций.
… код плагина …
Результат работы плагина
$return['total_height']
Максимальная высота упаковки заказа.
$return['total_width']
Максимальная ширина упаковки заказа.
$return['total_length']
Максимальная длина упаковки заказа.
$return['total_weight']
Максимальный вес заказа с упаковкой.
$return['callback']
Исполняемое значение типа
callback, которое может вернуть плагин вместо массива с ключами 'total_height', 'total_width', 'total_length' и 'total_weight'. Результат исполняемого кода должен вернуть массив с этими ключами.Shop-Script
Пример кода плагина
PHP
public function shippingPackage($items)
{
// Return a callback method name instead of an array of values.
return ['shopMyPluginHelper', 'shippingPackage'];
}









