2009-12-04 9 views
0

Я создал новый тип контента, называемый Главная, в котором есть несколько полей. Поля - это ссылки на узлы типа контента Single Image Promo. Single Promo Box имеет поля для названия, текста и изображения. Идея состоит в том, что я могу создать несколько копий Single Promo Box, каждый из которых имеет разные значения полей. Затем я хочу разместить несколько из них на главной странице.Как разместить несколько типов контента на странице Drupal?

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

Спасибо, Мария

ответ

1

Это звучит, как вы более усложнять.

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

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

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

+0

Спасибо googletorp, Вот что я сделал в конце, создал представление для него и настроил отображение блока. Я пробовал это в прошлом, но там, где я упал, указывалось, какой конкретный узел должен быть для представления. затем обнаружил фильтры вида, которые я сейчас использую. Кажется немного тяжелым, что я должен создать представление для e но очень узкий узел. – Maria

0

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

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

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

Смежные вопросы