Извечно стоял вопрос о том, как в корзине 1С-Битрикс вывести любое свойство товара. Оказывается, это не так сложно.
Рассмотрим это на примере вывода в корзине столбца с артикулами. Да, по умолчанию компонент sale.basket.basket может вывести артикул под названием товара, но мы хотим вывести артикул в отдельном столбце таблицы. Начиная с 20-й версии 1С-Битрикс.Управление сайтом, в компоненте sale.basket.basket появился очень нужный и полезный файл mutator.php. Если у вас версия Битрикс более ранняя, чем 20-я, то обновитесь до последней, иначе эта статья и видео вам не помогут.
Итак, открываем файл mutator.php, который находится в корне вашего компонента sale.basket.basket (не забудьте скопировать компонент в ваш шаблон). В нем нас будет интересовать цикл foreach в 21-й строке. Этот цикл пробегается по всем элементам корзины и заполняет данные о товаре, содержащемся в корзине, в массив $rowData для вывода в шаблоне. Далее, сразу в начале цикла, перед самим массивом необходимо вставить следующий код:
В первой строке мы используем метод GetProperty класса CIBlockElement для получения значения свойства-артикула с кодом CML2_ARTICLE для товара с ID = $row['PRODUCT_ID'] инфоблока с ID = 5. В результате в переменную $db_props попадет объект свойства. Во второй строке из объекта свойства мы получаем массив с данными свойства с помощью метода Fetch().
Затем, в массиве $rowData создадим элемент с ключом ARTNUMBER и значением $ar_props["VALUE"] - значение полученного свойства артикула товара.
Теперь для вывода артикула для каждого товара нам нужно открыть файл basket-item.php, который находится в папке js-templates шаблона sale.basket.basket и поставить тег {{ARTNUMBER}} там, где нужно вывести артикул. Более подробную информацию о выводе любых данных в корзине смотрите в видео выше.
241027,
Россия,
Брянская область,
поселок Путевка,
улица Рослальская, дом 8, кв.121
Извечно стоял вопрос о том, как в корзине 1С-Битрикс вывести любое свойство товара. Оказывается, это не так сложно.
Рассмотрим это на примере вывода в корзине столбца с артикулами. Да, по умолчанию компонент sale.basket.basket может вывести артикул под названием товара, но мы хотим вывести артикул в отдельном столбце таблицы. Начиная с 20-й версии 1С-Битрикс.Управление сайтом, в компоненте sale.basket.basket появился очень нужный и полезный файл mutator.php. Если у вас версия Битрикс более ранняя, чем 20-я, то обновитесь до последней, иначе эта статья и видео вам не помогут.
Итак, открываем файл mutator.php, который находится в корне вашего компонента sale.basket.basket (не забудьте скопировать компонент в ваш шаблон). В нем нас будет интересовать цикл foreach в 21-й строке. Этот цикл пробегается по всем элементам корзины и заполняет данные о товаре, содержащемся в корзине, в массив $rowData для вывода в шаблоне. Далее, сразу в начале цикла, перед самим массивом необходимо вставить следующий код:
В первой строке мы используем метод GetProperty класса CIBlockElement для получения значения свойства-артикула с кодом CML2_ARTICLE для товара с ID = $row['PRODUCT_ID'] инфоблока с ID = 5. В результате в переменную $db_props попадет объект свойства. Во второй строке из объекта свойства мы получаем массив с данными свойства с помощью метода Fetch().
Затем, в массиве $rowData создадим элемент с ключом ARTNUMBER и значением $ar_props["VALUE"] - значение полученного свойства артикула товара.
Теперь для вывода артикула для каждого товара нам нужно открыть файл basket-item.php, который находится в папке js-templates шаблона sale.basket.basket и поставить тег {{ARTNUMBER}} там, где нужно вывести артикул. Более подробную информацию о выводе любых данных в корзине смотрите в видео выше.