@oleg_drozdov

Как сделать модальное окно с компонентом в битрикс?

Доброго времени суток Вам. Подскажите пожалуйста, возможно ли, и если возможно то как, сделать модальное окно по нажатию кнопки, в котором будет компонент рекомендуемых товаров? Рекомендуемые товары соответственно должны быть разными на каждой странице. Спасибо Вам за внимание)
  • Вопрос задан
  • 6730 просмотров
Пригласить эксперта
Ответы на вопрос 2
reaferon
@reaferon
1. Создайте новую страницу без подключения header & footer. Просто в начале файла укажите
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
после чего вставьте код вызова нужного компонента.
2. При вызове модального окна укажите этот файл в качестве источника. Например, bootstrap вызывает примерно так:
<a class="btn" data-toggle="modal" href="remote.php" data-target="#modal">Click me</a>

3. В принципе, Ынджой
Ответ написан
Как связаны "разность" рекомендуемых товаров на разных страницах и то показываются ли они в модальном окне?
Андрей уже предложил вариант, но забыл добавить, что если рекомендуемые товары зависят от показываемого на странице товара, то подгружаемой странички с контентом окна, нужно передать какую-то инфу о том что есть на странице. Допустим id товара, если это страница детального просмотра элемента. Т.е. вызов должен быть в шаблоне и должен быть примерно таким:
<a class="btn" data-toggle="modal" href="remote.php?id=<?=$arResult['ID'];?>" data-target="#modal">Click me</a>


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

Чтобы товары были разные нужно отдать в компонент фильтр который выбирает товаров больше чем покажет компонент, и в качестве параметров сортировки указать RAND и для свойства сортировки и для направления.
Только нужно помнить что если второй метод показа и компонент в кэшируемой области, то он будет показывать у на одной странице одни и те же товары в течении времени действия кэша.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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