Разная информация в зависимости от категории

Главные вкладки

Аватар пользователя lex1991 lex1991 24 марта 2016 в 8:16

Всем доброго дня. Мучаюсь со своим киносайтом. При входе на сайт пользователю предлагается выбрать жанр (комедия, ужасы и т.д). Выбор сохраняется в сессии. Это делается для того, чтобы показывать новости на тему выбранного жанра. Например пользователь выбрал "комедия" и просматривает фильм из категории "боевики" при этом ему должны показываться новости из раздела "комедия" (сохранена в сессии). Также есть тип материала "новости" который содержит таксиномию соответственно. Как сделать так, чтобы на странице с фильмом показывались новости исходя из сохранений в сессиях ?

Комментарии

Аватар пользователя xakd xakd 24 марта 2016 в 8:53

Ну так сделать страницу вывода новостей(через Views или ручками), где в условии вывода PHP-код написать, выбирающий сохраненную в сессии категорию.

Аватар пользователя lex1991 lex1991 24 марта 2016 в 9:18

xakd wrote:

Ну так сделать страницу вывода новостей(через Views или ручками), где в условии вывода PHP-код написать, выбирающий сохраненную в сессии категорию.


Да, планировал через views выводить. Но вот не знаю как выставить условия во views в каком месте прописать код проверки сессии?

Аватар пользователя lex1991 lex1991 24 марта 2016 в 13:46

Lotar wrote:

из стандартных методов есть модуль context


А им как пользоваться? Как может помочь? Можно немного подробней?

Аватар пользователя Orion76 Orion76 24 марта 2016 в 14:06

lex1991 wrote:

А стандартными методами можно во вьювсе?


Помоему, предложенный модуль - все что Вам надо.
Он сам сохраняет значение фильтра в сессию,
И использует его для фильтрации выборки вьюсов..

Аватар пользователя lex1991 lex1991 28 марта 2016 в 15:55

Orion76 wrote:

lex1991 написал:

dgastudio написал:

https://www.drupal.org/project/global_filter

А стандартными методами можно во вьювсе?

Помоему, предложенный модуль - все что Вам надо.

Он сам сохраняет значение фильтра в сессию,

И использует его для фильтрации выборки вьюсов..


Помогите разобраться. В рунете нет ничего толкового. А с буржуем плохо очень дела. Элементарно print_r($_SESSION) НЕ удается вывести даже(((

Аватар пользователя Mnilionic Mnilionic 30 марта 2016 в 16:50

Если у вас жанры это термины таксономии, то не вижу никаких проблем.
- Добавляете во Views контекстный фильтр по tid (термин либо поле)
- Ставите опцию "Передать значение по умолчанию"
- Тип php код
- здесь вызываете свою функцию return _mymodule_get_prefer_genre();

Функция получает tid из хранилища (в вашем случае из сессии)

<?php
function _mymodule_get_prefer_genre(){
// добавить проверку, что жанр выбран, если не выбран предоставить по умолчанию или что-нить замутить
return $_SESSION['my_module']['genre_tid'];
}
?>