Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Не показывать товары, для которых не задана цена

00 голосов
4
Добрый день.

Можно ли как-то стандартными средствами Битрикса сделать так, чтобы товары, для которых не задана цена вообще не отображались на сайте?

В настоящий момент на месте таких товаров написано "Нет в наличии".
спросил 19 Май, 13 от LoLiTKa (620 баллов)

4 Ответы

+11 голос
Собственно это вопрос тюнинга компонентов, которые вы используетете.
Например, в компоненте bitrix:catalog.section есть свойство "Имя массива со значениями фильтра для фильтрации элементов". Его можно использовать для того, что б отфильтровывать элементы по критерию "только товары, у которых задана цена".
Должно получиться что-то вроде:
Код
<?php
global $arrFilter;
$arrFilter['!CATALOG_PRICE_1'] = false;
?>
<?$APPLICATION->IncludeComponent(
   "bitrix:catalog.section",
   "",
   Array(
      ...
      "FILTER_NAME" => "arrFilter",
      ...
?>


Подробнее про фильтрацию можно прочесть здесь и здесь.
ответил 19 Май, 13 от Alexiaz (320 баллов)
00 голосов
Что-то я маленько недопонимаю вот что.
Как автоматически применить фильтр? Т.е. чтобы всё выглядело так, как будто пользователь сайта уже заранее нажал кнопку фильтр с заданными параметрами.
ответил 19 Май, 13 от LoLiTKa (620 баллов)
+11 голос
Цитата
Anton Guz пишет:
Собственно это вопрос тюнинга компонентов, которые вы используетете.
Например, в компоненте bitrix:catalog.section есть свойство "Имя массива со значениями фильтра для фильтрации элементов". Его можно использовать для того, что б отфильтровывать элементы по критерию "только товары, у которых задана цена".
Должно получиться что-то вроде:
Код
<?php
global $arrFilter;
$arrFilter['!CATALOG_PRICE_1'] = false;
?>
<?$APPLICATION->IncludeComponent(
&nbsp;&nbsp;&nbsp;"bitrix:catalog.section",
&nbsp;&nbsp;&nbsp;"",
&nbsp;&nbsp;&nbsp;Array(
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;...
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"FILTER_NAME" => "arrFilter",
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;...
?>


Подробнее про фильтрацию можно прочесть здесь и здесь.


Сделал всё как Вы описали. Работает. Большое спасибо!
ответил 04 Авг, 13 от LoLiTKa (620 баллов)
00 голосов
Я решил данную проблему по тракторному - Магазин работает с 1С, в ней верное количество всех товаров, делаю полную выгрузку с галками удалять товары/группы отсутствующие в выгрузке =D
Но, как появится свободное время, попробую разобраться с этим методом)
ответил 05 Ноя, 13 от FrYsT3r (140 баллов)

Похожие вопросы

0 голосов
4 ответов
спросил 29 Июль, 13 от Kiriel (2,010 баллов)
0 голосов
9 ответов
0 голосов
2 ответов
спросил 07 Апр, 14 от Kania (5,180 баллов)
0 голосов
0 ответов
спросил 21 Март, 14 от NiKa (100 баллов)