sales_channels

Позволяет плагинам присваивать собственные значения свойствам каналов продаж для их отображения в интерфейсе пользователя.

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

Shop-Script

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

$params['missing_channel_ids'] array Список указанных каналов продаж, которые не были найдены среди стандартных каналов, — в случае, если при обработке события приложению требуется получить информацию об ограниченном списке каналов продаж, а не обо всех имеющихся каналах.
$params['known_channels'] array Список стандартных каналов продаж, например: 'storefront:...' (витрина с указанием её адреса после двоеточия).
… код плагина …

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

$return['id']
Идентификатор канала продаж — значение параметра sales_channel из таблицы shop_order_params.
$return['type']
Тип канала продаж из списка:
  • 'manager': заказ добавлен вручную сотрудником магазина;
  • 'storefront': заказ оформлен покупателем на витрине;
  • 'widget': заказ оформлен покупателем через виджет, опубликованный на стороннем ресурсе;
  • 'marketplace': заказ оформлен через API маркетплейса;
  • 'unknown': другой источник создания заказа.
$return['name']
Локализованное название канала продаж, которое должно отображаться в интерфейсе пользователя. Если не указано, то вместо названия используется идентификатор из поля 'id'.
$return['icon_url']
Абсолютный URL изображения-иконки, связанной с каналом продаж. Максимальные рекомендуемые размеры иконки — 192х192 пикселей. Иконка может отображаться, например, в информации о заказе вместо фотографии покупателя, если в профиле покупателя фотография не загружена.
Shop-Script

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

PHP

public function salesChannels($params)
{
    // $unrecognized_channels = $params['missing_channel_ids'];
    // $default_channels = $params['known_channels'];

    return [
        [
            'id' => 'marketplace:megastore',
            'name' => _wp('Mega Store'),
            'type' => 'megastore',
            'icon_url' => wa('shop')->getAppPath('plugins/' . $this->id . '/img/channels/megastore.png'),
        ],
    ];
}