Представление для отдельного материала

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

Аватар пользователя Никки Никки 28 октября 2014 в 16:02

Пытаюсь сделать представление для вывода отдельных материалов из раздела video. То есть, чтобы по адресу video/25 (25 - nid материала) было то, что задаю в представлении.
В представлении все настраиваю и в предварительных результатах, выставив значение контекстного фильтра 25 получаю именно то, что надо. Система показывает, что на странице video/25 будет выводится то, что задано полями представления.
Однако, когда все сохраняю и перехожу на страницу video/25, то она выводится так, как задан вывод в "управлять отображением" в типе содержимого данного раздела.
Я думал, что если задано правило в представлении, то оно как-то перекрывает настройки отображения в типе содержимого. Оказалось нет.
Где ошибаюсь?

Комментарии

Аватар пользователя Никки Никки 28 октября 2014 в 17:35

Ок, как делается без представления, если требуется применить условие для отображения материала?

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

Аватар пользователя Никки Никки 28 октября 2014 в 17:51

"наговнокодить в шаблоне" я могу вообще-то. Но не хочется.

preprocess_node() - плохо знаю api друпала. Но уже пошел читать про preprocess_node()

"там же" - где там же?
И можно все-таки через представления как-то?

Аватар пользователя Никки Никки 29 октября 2014 в 10:08

Если можно представлениями, то как? То есть я сделал, но оно перекрывается правилами отображения, прописанными для данного типа материала.

Условие формирует ссылку на скриншоте к видеоролику. Ссылка может вести на сторонний ресурс, может открывать всплывающее окно, в котором аяксом запрашивается ролик, либо может открывать обычное окно браузера, если по некоторым причинам нельзя открыть всплывающее. То есть мне нужно сгенерить нужную ссылку до того, как инфа о ролике отобразится на странице.Чтобы реализовать такое в представлениях мне пришлось установить модуль PHP_Views, который дергает нужные мне поля из БД и потом я уже генерю условия. Теоретически я могу запросить эти поля из БД прямо в шаблоне. Но раз они уже запршиваются в представлениях, то чего плодить похожий код...

Аватар пользователя Никки Никки 29 октября 2014 в 11:22

"ХулиGUN" wrote:
Хранить php код в базе как то грешновато

в базе от кода только инклуд. Если я правильно понимаю. Сам код в отдельном файле.

"ХулиGUN" wrote:
всё решается через theme_field()

То есть темизация поля? Уже темизирую. Просто хотелось как-то покомпактнее, чтобы все уж в одном месте было. А то теперь и представления и шаблоны для полей...