Достаточно часто, при разработке каталога товаров или интернет-магазина на системе управления Битрикс, встает задача как-то пометить новинки или спецпредложения. Как правило, это делается с помощью небольших лейблов которые вешаются на конкретный товар в списке всех товаров. Сделать это достаточно просто, и, возможно, не расскажу ничего нового. Однако, быть может, кому-то сгодится.
Для данной заметки есть дополнение Автоматически помечаем новинки лейблом в каталоге битрикс
Для начала идем в настройки инфоблока нашего торгового каталога и создаем новое свойство "Новинка" с типом список и атрибутом NEWPRODUCT
Затем переходим в настройки этого свойства и задаем ему вид "Флажки" с одним значением Y-Да
Переходим в публичную часть сайта, в настройки нужного нам инфоблока и в разделе "Настройки списка" выделяем наше свойство.
Рисуем лейбл, здесь уже как душе угодно
Идем по пути /bitrix/templates/ШАБЛОН_ВАШЕГО_САЙТА/compnents/bitrix/catalog/ШАБЛОН_ВАШЕГО_КАТАЛОГА/bitrix/catalog.section/.default/ создаем здесь папку images и кидаем в него картинку лейбла. По этому же пути открываем файлы template.php и style.css
В template.php, в нужном месте, там где планируется прилепить лейбл, вставляем
<?if ($arElement["DISPLAY_PROPERTIES"]['NEWPRODUCT']){?>
<div class="novinko"></div>
<?}?>
А в style.css, соответственно, стилевое оформление лейбла, с нашим фоновым рисунком
.novinko {
position: relative;
float: right;
width: 42px;
height: 27px;
margin: 0px 0px -29px 0px;
background: url('images/new.png') no-repeat;
z-index: 100;
}
Вот и все: после того как у нужных товаров будет поставлен чекбокс напротив свойства новинка.
У товаров будет появляться наш лейбл
Все ровно тоже самое можно проделывать с любыми "пометками" на товарах или новостях. Успехов.
![]()
Дмитрий
|
А как сделать так чтобы новинкой был помечен элемент на определенный срок, а потом лейбл снимался бы автоматом !?
|
![]()
Михаил Базаров
|
||
|
||
![]()
Сергей
|
Михаил,
А для какой версии Битрикс актуальна Ваша инструкция? Пытаюсь применить ее на 14.5.1, в котором несколько отличается путь: /bitrix/templates/eshop_adapt_/components/bitrix/catalog.section/template1/... И могли бы Вы посоветовать в какое именно место в template.php необходимо вставить код? Спасибо. |
![]()
Михаил Базаров
|
||
|
||
![]()
Максим
|
Добрый день.
А как "подсветить" категорию (раздел) каталога, в которой есть новинки? Или просто категорию с определенным ID? |
![]()
Александр
|
||||
|
||||
![]()
Александр
|
||||||
|
||||||
![]()
Гость сайта
|
||||
|
||||
![]()
Владислав
|
Доброго времени суток!
Сделал все как описано. Появилась лэйба. Но вместе с ней, при наведении на товар, появляется надпись с названием свойства, с пометкой "да" в самом низу. Как избавиться от этого, не подскажите? |
![]()
Михаил Базаров
|
||
|
||
![]()
Гость сайта
|
Добрый день сделал как описано тут, но у меня ничего не появилось....
|
![]()
Михаил Базаров
|
||
|
||
![]()
Гость сайта
|
||||
|
||||
![]()
Гость сайта
|
||||||
|
||||||
![]()
adelopod
|
<? if ($arItem[" а не <?if ($arElement чтобы выводилась картинка в разделах
|
![]()
Михаил Базаров
|
||
|
||
![]()
Леонид
|
Добрый день, Михаил! Я вас прекрасно понимаю, что вы очень заняты в данный момент, но может уделите 5 минут вашего времени? Дело в том, что я самоучка и иногда возникают различные вопросы. Интернет весь прошарил и не нашел решения. В данный момент занимаюсь созданием интернет магазина pceramics.ru. Очень много полезной информации для себя узнал благодаря вашим урокам. Тут у меня возник вопрос: Как пометить раздел лейблом "Новинка" и т.д.? Есть идея использовать "UF_" (Да/Нет), но как это реализовать мозгов не хватает, а может быть если более простой способ?
|
![]()
Guest
|
||
|
||
![]()
Анатолий
|
Здравствуйте! Не могу понять как сделать лейб. Путь отличается от вашего
/bitrix/templates/mm/components/bitrix/catalog.section/catalog/template Нужно по этому же пути создать папку images и кидать в него картинку лейбла? И по этому же пути открывать файлы template.php и style.css и прописывать коды? |
![]()
Михаил Базаров
|
||
|
||
![]()
Анатолий
|
||
|
||
![]()
Сергей
|
Здравствуйте.
Спасибо, отличный урок, все описано доходчиво. Как можно реализовать вывод иконки, если свойство имеет несколько параметров - А, В, С. Свойство выгружается из 1с. Т.е используется не флаг а с выпадающего список. Значения в 1с проставляются, и если значение = А то поставить флаг. Спасибо. |
![]()
Ivan
|
||||
|
||||
![]()
Станислав
|
Как аналогичное провернуть в карточке товара?
|
![]()
Михаил Базаров
|
||
|
||
![]()
Vaqif
|
Здравствуйте михаил. Сделал все как показано. Лейбл не выводится. если поставить <div class="novinko"></div> вручную выводится.
Скажите пожалуйста есть ли альтернатива $arElement["DISPLAY_PROPERTIES"]['NEWPRODUCT']? Думаю может у меня свойство гдето в другом месте хранится. или если есть функция вывода всех переменных чтобы я оттуда поискал то что мне надо. Дело в том что если я просто делаю echo $arElement["DISPLAY_PROPERTIES"] тоже ничего не выводит. Спасибо |
![]()
Михаил Базаров
|
||||
|
||||
![]()
Vlad Vladij
|
Спасибо за подсказку, реально помогло и работает, скажу всем остальным, у меня 16 версия битрикса и сработало только arItem, если у кого-то и после этого не отображается, то ищите глюк в стилях, возможно надо поменять позиционирование на absolute, у меня сработало
![]() |
На нем, уже много видеоуроков по 1С-Битрикс. Как одиночные видео так и серии видеоуроков Перейти на канал
Совсем скоро выйдет видеокурс по разработке доски объявлений с мобильным приложением. Подписывайтесь и будьте в курсе: