Форма для связи

Ваше имя * Ваш email * Описание проекта * *

* - обязательные поля

Меню

Вперед - назад в элементах инфоблока

Вперед - назад в элементах инфоблока


< ?
// сортировку берем из параметров компонента
$arSort = array(
		$arParams["SORT_BY1"]=>$arParams["SORT_ORDER1"],
		$arParams["SORT_BY2"]=>$arParams["SORT_ORDER2"],
	);
// выбрать нужно id элемента, его имя и ссылку. Можно добавить любые другие поля, например PREVIEW_PICTURE или PREVIEW_TEXT
$arSelect = array(
		"ID",
		"NAME",
		"DETAIL_PAGE_URL"
	);
// выбираем активные элементы из нужного инфоблока. Раскомментировав строку можно ограничить секцией
$arFilter = array (
		"IBLOCK_ID" => $arResult["IBLOCK_ID"],
		//"SECTION_CODE" => $arParams["SECTION_CODE"],
		"ACTIVE" => "Y",
		"CHECK_PERMISSIONS" => "Y",
	);
// выбирать будем по 1 соседу с каждой стороны от текущего
$arNavParams = array(
		"nPageSize" => 1,
		"nElementID" => $arResult["ID"],
	);
$arItems = Array();
$rsElement = CIBlockElement::GetList($arSort, $arFilter, false, $arNavParams, $arSelect);
$rsElement->SetUrlTemplates($arParams["DETAIL_URL"]);
while($obElement = $rsElement->GetNextElement())
		$arItems[] = $obElement->GetFields();
// возвращается от 1го до 3х элементов в зависимости от наличия соседей, обрабатываем эту ситуацию		
if(count($arItems)==3):
	$arResult["TORIGHT"] = Array("NAME"=>$arItems[0]["NAME"], "URL"=>$arItems[0]["DETAIL_PAGE_URL"]);
	$arResult["TOLEFT"] = Array("NAME"=>$arItems[2]["NAME"], "URL"=>$arItems[2]["DETAIL_PAGE_URL"]);
elseif(count($arItems)==2):
	if($arItems[0]["ID"]!=$arResult["ID"])
		$arResult["TORIGHT"] = Array("NAME"=>$arItems[0]["NAME"], "URL"=>$arItems[0]["DETAIL_PAGE_URL"]);
	else
		$arResult["TOLEFT"] = Array("NAME"=>$arItems[1]["NAME"], "URL"=>$arItems[1]["DETAIL_PAGE_URL"]);
endif;
// в $arResult["TORIGHT"] и $arResult["TOLEFT"] лежат массивы с информацией о соседних элементах
? >

В шаблон компонента template.php пишем:


< ?if(is_array($arResult["TOLEFT"])):? >< a class="fleft" id="previous_page" href="< ?=$arResult["TOLEFT"]["URL"]? >">< < ?=$arResult["TOLEFT"]["NAME"]? >< /a >< ?endif? >
< ?if(is_array($arResult["TORIGHT"])):? >< a class="fright" id="next_page" href="< ?=$arResult["TORIGHT"]["URL"]? >">< ?=$arResult["TORIGHT"]["NAME"]? > >< /a >< ?endif? >


Популярное
6

«Великолепная восьмёрка» - летняя акция 2019 для «1С-Битрикс: Управление сайтом»!

Скидки до 40% на продукты «1С-Битрикс: Управление сайтом»! В погоню за скидкой!

14

«Великолепная восьмёрка» - летняя акция 2019 для Битрикс24!

Скидки до 40% на продукты Битрикс24! В погоню за скидкой!

15

БИТ­РИКС: ПЕ­РЕХОД НА PHP 7

С 30 июня 2019 года будет ограничена поддержка продуктов 1С-Битрикс на PHP версии ниже 7.1. Вы используете версию PHP 5.6. Пожалуйста, запланируйте обновление PHP или обратитесь в службу технической поддержки вашего хостинга.

30

Разработка сервиса проведения безопасных сделок

Сервис выполнят функцию гаранта проведения сделки между Продавцом и Покупателем в сети интернет с типом сделки Товар или Услуга.

37

Разработка личного кабинета на сайте

Многие современные интернет-ресурсы имеют в своей структуре модуль «Личный кабинет». Личный кабинет сайта, в зависимости от своей направленности, может решать множество задач, суть которых сводится к автоматизации рабочих процессов компании, улучшению уровня обслуживания клиентов, оптимизации взаимодействия клиентов и организации.

Рассчитай! Стоимость своего проекта в калькуляторе типовых проектов.