frontend_products

Позволяет изменять свойства товаров перед отображением на витрине.

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

Shop-Script

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

$params['products'] array Список товаров. Каждый элемент списка — массив со следующими ключами:
$params['products'][product_id]['id'] int ID товара.
$params['products'][product_id]['name'] string Наименование.
$params['products'][product_id]['summary'] string Краткое описание.
$params['products'][product_id]['meta_title'] string Значение элемента TITLE страницы товара.
$params['products'][product_id]['meta_keywords'] string Значение метатега keywords.
$params['products'][product_id]['meta_description'] string Значение метатега description.
$params['products'][product_id]['description'] string Полное описание.
$params['products'][product_id]['contact_id'] int ID контакта пользователя, добавившего товар.
$params['products'][product_id]['create_datetime'] datetime Дата и время создания товара.
$params['products'][product_id]['edit_datetime'] datetime Дата и время последнего обновления товара.
$params['products'][product_id]['status'] int Обозначение статуса товара: -1 (снят с публикации), 0 (скрыт), 1 (опубликован).
$params['products'][product_id]['type_id'] int ID типа товара.
$params['products'][product_id]['image_id'] int ID основного изображения.
$params['products'][product_id]['video_url'] string Ссылка на видеоролик.
$params['products'][product_id]['sku_id'] int ID основной модификации.
$params['products'][product_id]['url'] int Редактируемая часть URL страницы товара на витрине.
$params['products'][product_id]['rating'] float Рейтинг товара по результатам его оценки покупателями.
$params['products'][product_id]['price'] float Цена.
$params['products'][product_id]['compare_price'] float Зачёркнутая цена.
$params['products'][product_id]['currency'] string Обозначение валюты товара в формате ISO 4217.
$params['products'][product_id]['min_price'] float Минимальная цена модификации.
$params['products'][product_id]['max_price'] float Максимальная цена модификации.
$params['products'][product_id]['tax_id'] int ID выбранного налогового правила или 0, если правило не выбрано.
$params['products'][product_id]['count'] float|null Общее количество на складе всех модификаций. Значение null означает, что для некоторых модификаций товара указано бесконечное количество на складе.
$params['products'][product_id]['count_denominator'] int Доступная точность указания складских остатков товара. Возможные значения: 1 (целые штуки), 10 (точность до десятых), 100 (точность до сотых), 1000 (точность до тысячных).
$params['products'][product_id]['order_multiplicity_factor'] float Шаг (кратность) добавления в корзину.
$params['products'][product_id]['stock_unit_id'] int ID выбранной складской единицы измерения количества.
$params['products'][product_id]['base_unit_id'] int ID выбранной базовой единицы измерения количества.
$params['products'][product_id]['stock_base_ratio'] float Соотношение между складской и базовой единицами измерения количества.
$params['products'][product_id]['order_count_min'] float Минимальное количество товара в заказе.
$params['products'][product_id]['order_count_step'] float Значение изменения количества кнопками «+/-».
$params['products'][product_id]['cross_selling'] int Режим отображения сопутствующих товаров: 0 (выключено), 1 (включено показывать в соответствии с настройками типа товаров), 2 (включено показывать выбранные вручную рекомендуемые товары).
$params['products'][product_id]['upselling'] int Режим отображения схожих и альтернативных товаров: 0 (выключено), 1 (включено показывать в соответствии с настройками типа товаров), 2 (включено показывать выбранные вручную рекомендуемые товары).
$params['products'][product_id]['rating_count'] int Количество отзывов о товаре.
$params['products'][product_id]['total_sales'] float Общая сумма продаж товара, выраженная в основной валюте магазина,.
$params['products'][product_id]['category_id'] int ID основной категории.
$params['products'][product_id]['badge'] string Обозначение одной из стандартных наклеек либо HTML собственной наклейки для изображений.
$params['products'][product_id]['frontend_url'] string Относительный URL страницы товара.
$params['products'][product_id]['sku_type'] int Тип выбора модификаций товара на витрине: 0 (по наименованиям артикулов), 1 (по значениям характеристик).
$params['products'][product_id]['sku_count'] int Количество модификаций.
$params['products'][product_id]['skus'] array Список модификаций товара. Каждый элемент списка — массив со следующими ключами:
$params['products'][product_id]['skus'][sku_id]['id'] int ID модификации.
$params['products'][product_id]['skus'][sku_id]['sku'] string Код артикула.
$params['products'][product_id]['skus'][sku_id]['sort'] int Значение сортировки.
$params['products'][product_id]['skus'][sku_id]['name'] string Наименование артикула.
$params['products'][product_id]['skus'][sku_id]['image_id'] int ID изображения, выбранного в свойствах модификации.
$params['products'][product_id]['skus'][sku_id]['price'] float Цена.
$params['products'][product_id]['skus'][sku_id]['purchase_price'] float Закупочная цена.
$params['products'][product_id]['skus'][sku_id]['compare_price'] float Зачёркнутая цена.
$params['products'][product_id]['skus'][sku_id]['count'] float|null Общее количество на складе или null, если количество модификации на всех складах бесконечное.
$params['products'][product_id]['skus'][sku_id]['available'] int Флаг (0 или 1), означающий доступность модификации для заказа.
$params['products'][product_id]['skus'][sku_id]['stock_base_ratio'] float Соотношение между складской и базовой единицами измерения количества.
$params['products'][product_id]['skus'][sku_id]['order_count_min'] float Минимальное количество модификации в заказе.
$params['products'][product_id]['skus'][sku_id]['order_count_step'] float Значение изменения количества кнопками «+/-».
$params['products'][product_id]['skus'][sku_id]['status'] int Видимость модификации на витрине.
$params['products'][product_id]['skus'][sku_id]['available'] bool Доступность модификации для заказа.
$params['products'][product_id]['skus'][sku_id]['file_name'] string Имя прикреплённого файла.
$params['products'][product_id]['skus'][sku_id]['file_size'] int Размер прикреплённого файла в байтах.
$params['products'][product_id]['skus'][sku_id]['file_description'] string Описание прикреплённого файла.
$params['products'][product_id]['skus'][sku_id]['stock'] array Массив с информацией об остатках на отдельных складах со следующими ключами:
$params['products'][product_id]['skus'][sku_id]['stock'][stock_id]['id'] int ID склада.
$params['products'][product_id]['skus'][sku_id]['stock'][stock_id]['count'] float|null Количество модификации на складе.
$params['skus'] array Список товарных модификаций, соответствующих текущим условиям фильтрации. Или все модификации отображаемых товаров, если фильтрация не применяется.
$params['skus'][sku_id]['id'] int модификации.
$params['skus'][sku_id]['sku'] string Код артикула.
$params['skus'][sku_id]['product_id'] int ID товара.
$params['skus'][sku_id]['name'] string Наименование.
$params['skus'][sku_id]['status'] int Статус модификации: 0 (недоступна для заказа), 1 (доступна для заказа).
$params['skus'][sku_id]['type_id'] int ID типа товара.
$params['skus'][sku_id]['image_id'] int ID изображения.
$params['skus'][sku_id]['price'] float Цена.
$params['skus'][sku_id]['compare_price'] float Зачёркнутая цена.
$params['skus'][sku_id]['currency'] string Обозначение валюты товара в формате ISO 4217.
$params['skus'][sku_id]['count'] float|null Общее количество на складе. Значение null означает, что для некоторых складов указано бесконечное количество.
$params['skus'][sku_id]['stock_base_ratio'] float|null Соотношение между складской и базовой единицами измерения количества.
$params['skus'][sku_id]['order_count_min'] float|null Минимальное количество товара в заказе.
$params['skus'][sku_id]['order_count_step'] float|null Значение изменения количества кнопками «+/-».
$params['skus'][sku_id]['status'] int Видимость модификации на витрине.
$params['skus'][sku_id]['file_name'] string Имя прикреплённого файла.
$params['skus'][sku_id]['file_size'] int Размер прикреплённого файла в байтах.
$params['skus'][sku_id]['file_description'] string Описание прикреплённого файла.
… код плагина …

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

Shop-Script

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

PHP

public function frontendProducts($params)
{
    if (!empty($params['products']) && is_array($params['products'])) {
        foreach ($params['products'] as &$product) {
            shopMyPluginHelper::updateProduct($product);
        }
        unset($product);
    }
}