Как разместить несколько типов контента на странице Drupal? - PullRequest
0 голосов
/ 04 декабря 2009

Я создал новый тип контента под названием Домашняя страница, который имеет несколько полей. Поля являются ссылками на узлы для типа контента Single Image Promo. В одном промо-боксе есть поля для заголовка, текста и изображения. Идея состоит в том, что я могу создать несколько копий одного промо-бокса, каждый с разными значениями поля. Затем я хочу разместить несколько из них на главной странице.

Так что теперь я могу разместить специальную акцию с одним изображением на главной странице. Но какой файл шаблона мне нужно создать, чтобы стилизовать способ показа Single Image Promo, когда это ссылка на узел на домашней странице?

Спасибо, Maria

Ответы [ 2 ]

1 голос
/ 04 декабря 2009

Звучит так, как будто ты слишком усложняешь вещи.

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

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

Чтобы ответить на ваш вопрос, при отображении узлов они по умолчанию будут отображаться с файлом шаблона node.tpl.php. Чтобы создать конкретные шаблоны для каждого типа вашего узла, вы можете создать новый шаблон с именем node-nodetype.tpl.php, где nodetype - это то, что вы называли типом узла при его создании.

0 голосов
/ 04 декабря 2009

node-nodetype.tpl.php может работать в определенной степени, но в этом файле вы стилизуете всю страницу, причем поля типа контента доставляются в tpl оптом через одну переменную $ content. Возможно, вам этого достаточно, но если вам нужен более точный контроль:

Вы можете редактировать и стилизовать поля отдельных типов контента с помощью модуля Шаблон содержимого (созерцать). Он обеспечивает доступ ко всем полям типа контента в переменной $ content (которая поставляется оптом для node-nodetype.tpl.php. Предполагается, что php позволяет добавить логическое и условное форматирование для полей ссылки на узел ( обычно четко обозначено в созерцательной).

И не забывайте о простом решении на вкладке «Поля отображения» типа контента (рядом с вкладкой «Управление полями»), где вы можете контролировать некоторые выходы полей прямо из шлюза.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...