Приветствую. Подскажите, как сделать переключалку вида каталога. Между плитками и списком, например...

Социальная сеть
Данное сообщество не является официальным и не преследует ни каких целей. Владелец сайта оставляет за собой право удалять сообщения по своему усмотрению. Рекламные темы и сообщения только с согласия администратора.

Вход Регистрация
Быстрый вход / регистрация, через социальную сеть
Регистрируясь на сайте, Вы безоговорочно принимаете условия политики конфеденциальности и обработки персональных данных

Влад Баратрумов

Дата последнего входа: 2 месяца назад
Дата регистрации: 2 Октября 2018 17:21
День рождения: 22 ноября
Пол: Мужской
Влад Баратрумов -> Всем
2 октября 17:24
Приветствую. Подскажите, как сделать переключалку вида каталога. Между плитками и списком, например. Долго гуглил- не нашел, мб запрос не правильно формулирую  
Михаил Базаров
В section.php

Переключатель шаблонов

$templateName = $APPLICATION->get_cookie('view') ? $APPLICATION->get_cookie("view") : "blocks";
if (isset($_POST["b1"])) {
   $templateName = "blocks";
   $APPLICATION->set_cookie("view", $templateName);
}
if (isset($_POST["b2"])) {
   $templateName = "lines";
   $APPLICATION->set_cookie("view", $templateName);
}

В $templateName передается выбранный шаблон. Если ни чего не выбрано, передается шаблон "blocks"

Для пользователей два input с переключателем шаблонов

<form action="" method="POST">
     <input type="submit" name="b1" value="Блоки"/>
     <input type="submit" name="b2" value="Строки"/>
</form>

В компонент bitrix:catalog.section вместо указания шаблона вставляем $templateName

<? $APPLICATION->IncludeComponent(
    "bitrix:catalog.section",
     $templateName,
    Array(...
    ... ),
    $component
);
?>