Меню
Михаил, день добрый. Подскажите пожалуйста, как можно вывести на главную страницу не все разделы каталога, а только выборочные? И как настроить свойство, какой раздел выводить на главной, а кокой не надо?
Цитата
Roman Selkin написал:
Михаил, день добрый. Подскажите пожалуйста, как можно вывести на главную страницу не все разделы каталога, а только выборочные? И как настроить свойство, какой раздел выводить на главной, а кокой не надо?
Просто создайте пользовательское свойства для раздела. Типа чекбокс.
Ну и на главной, просто через catalog.section.list или через API отфильтруйте их по этому признаку.

Что бы получить пользовательские поля, можно использовать фильтр:
Код
arSelect = Array("UF_WEBSITE", "UF_BOTTOM_TEXT")); //Выборочные свойства
или
Код
arSelect = Array("UF_*")); //Все свойства
Цитата
Михаил Базаров написал:
Цитата
Roman Selkin написал:
Михаил, день добрый. Подскажите пожалуйста, как можно вывести на главную страницу не все разделы каталога, а только выборочные? И как настроить свойство, какой раздел выводить на главной, а кокой не надо?
Просто создайте пользовательское свойства для раздела. Типа чекбокс.
Ну и на главной, просто через catalog.section.list или через API отфильтруйте их по этому признаку.

Что бы получить пользовательские поля, можно использовать фильтр:
Код
 arSelect = Array("UF_WEBSITE", "UF_BOTTOM_TEXT")); //Выборочные свойства
 
или
Код
 arSelect = Array("UF_*")); //Все свойства
 
Михаил, а вы можете помочь в данном вопросе? Не очень понял понял куда это ( arSelect = Array("UF_*")); //Все свойства) нужно вставить? Я новичок в этом.
Словами это не описать, нудновато и не понятно получается.
Завтра сделаю видео, как раз есть такая же задачка на одном из проектов.
Выложу сюда.
Цитата
Михаил Базаров написал:
Словами это не описать, нудновато и не понятно получается.
Завтра сделаю видео, как раз есть такая же задачка на одном из проектов.
Выложу сюда.
Огромное спасибо
Все таки опишу словами. С видео пока напряженка:
По сути, работа заключается в  использовании пользовательского поля для раздела инфоблока

- Создаем пользовательское поле раздела, типа список со значениями да/нет.
- Значение по умолчанию "нет"
- Пусть называется 'UF_MAIN_PAGE'


Вариант 1:
Выводим стандартный компонент section.list и в его параметрах указываем
Код
"SECTION_USER_FIELDS" => array(
    0 => "UF_MAIN_PAGE",
    1 => "",
),
В шаблоне выполняем проверку на значение этого поля (оно true/false (если да = 1, если нет пустое)) если указано да, выводим раздел с ссылкой
Код
<? if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
$this->setFrameMode(true);
?>
<div class="main_page_links">
    <? foreach ($arResult["SECTIONS"] as $arSection) {
        if ($arSection['UF_MAIN_PAGE'] == true) {
            ?>
            <a href="<?= $arSection["SECTION_PAGE_URL"] ?>"><?= $arSection["NAME"] ?></a>
            <?
        }
    } ?>
</div>


Вариант 2:
Суть та же. Но через API - без использования компонента
Код
$arFilter = array(
    "IBLOCK_ID" => 9, // Сюда ID нужного инфоблока
    "UF_MAIN_PAGE" => true
);
$rsSect = CIBlockSection::GetList(array(),$arFilter,false,false);
while ($arSect = $rsSect->GetNext())
{
    echo $arSect['SECTION_PAGE_URL']; //ссылка
    echo $arSect['NAME']; //название раздела
}
Видеоуроки по
1С-Битрикс
на моем Boosty канале Видео
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить картинки
 

Блог-note: заметки разработчика

Кастомизация поля input type file, свой внешний вид

Задача: Поле input type="file" предоставляет возможность загрузки файлов на веб-странице. Однако стандартный в...

Выбор основного раздела для элемента инфоблока в 1С-Битрикс

Проблема: при привязке элемента инфоблока к нескольким разделам возникают дубли его детальной страницы, в зависимости от...

Показать доступный остаток каждого товара в корзине 1С-Битрикс

Задача: показать остаток каждого товара в корзине 1С-Битрикс, что бы покупатель сразу знал предельное колличество товара...

Вывести разделы инфоблока по первым буквам не меняя структуру каталога. Алфавитный указатель

Например: у нас есть инфоблок с большим количеством разделов. И мы хотим, на сайте разбить разделы по буквам. Самый прос...

Установка счетчика Яндекс.Метрики на сайт с Content Security Policy (CSP)

Если на вашем сайте не отображаются данные о кликах и скроллинге в Яндекс.Метрике, вероятнее всего, это связано с настро...

Уникальный URL для торговых предложений (SKU) с возможностью автоматического выбора предложения при переходе по ссылке.

Задача: на странице товара необходимо реализовать функцию автоматического изменения URL при выборе определенной товарной...

Добавление своих полей в почтовые шаблоны Битрикс

Иногда нужно внести свои поля в почтовые шаблоны битрикс. Например: добавить имя и номер телефона заказчика в почтовый ш...

Следующая/предыдущая новость/статья при просмотре подробной в Битрикс

Странное дело, в Битрикс по умолчанию, отсутсвует функционал для навигации внутри новостей или статей типа: "Следующая/...

Вывести минимальную цену самого дешевого торгового предложения

Если у товара несколько торговых предложений и у каждого предложения разные цены, иногда требуется вывести минимальную ц...