Как в битриксе исключить текущую новость из показа?

Для исключения текущей новости из показа на сайте, используя "1C-Bitrix", есть несколько способов. Один из самых простых способов - это использовать фильтр по ID новости.

1. Откройте файл шаблона, в котором выводится список новостей (обычно это файл .php, отвечающий за вывод списка новостей, например, news.list или news.detail).

2. Внутри цикла foreach, который выводит каждую новость, добавьте проверку на ID текущей новости, чтобы исключить ее из показа. В 1C-Bitrix можно получить ID текущей новости с помощью глобальной переменной $arResult:

foreach ($arResult["ITEMS"] as $arItem) {
  if ($arItem["ID"] != $arResult["ID"]) {
    // Вывод новости за исключением текущей
  }
}

В этом примере мы проверяем, не совпадает ли ID текущей новости с ID новости в текущей итерации цикла. Если нет, то выводим новость. Таким образом, текущая новость будет исключена из показа.

3. Обновите страницу с новостями, и вы должны увидеть, что текущая новость больше не отображается в списке.

Если вы хотите исключить новость из вывода на другой странице в рамках того же компонента "1C-Bitrix", то процесс будет немного другим. В этом случае, вам нужно будет использовать глобальную переменную $arrFilter.

1. В файле, который отвечает за вывод списка новостей на другой странице, определите массив фильтра $arrFilter, исключив текущую новость по ID:

global $arrFilter;
$arrFilter = array("!ID" => $arResult["ID"]);

2. После этого компонент "1C-Bitrix" автоматически применит этот фильтр к выводу новостей.

3. Обновите страницу с новостями, и вы должны увидеть, что текущая новость больше не отображается.

Таким образом, есть несколько способов исключить текущую новость из показа на сайте в "1C-Bitrix". Вы можете выбрать подходящий вариант для вашего случая и применить его в коде вашего проекта.