Вопрос

Мы создаем очень насыщенный контентом сайт на Drupal.Я впервые с этим работаю.На этом сайте есть множество разделов, каждый из которых имеет свой макет.Я планирую определить page.tpl.php с помощью метода phptemplate_preprocess_page().

Мой вопрос заключается в том, как лучше всего указать, где на данной странице размещать различные фрагменты вторичного контента.У нас есть множество компонентов типа боковой панели, каждый из которых содержит несколько небольших списков или групп изображений.Я думаю, что лучший подход здесь - определить несколько регионов по мере необходимости и добавить пользовательские представления (используя модуль Views) в эти регионы.Вам это кажется разумным?

Обновить:

Что касается обработки представлений как запросов - что меня смущает, так это то, что у представлений также есть опции для изменения их внешнего вида.Я бы предпочел, если бы я мог просто получить массив узлов обратно из представления, чтобы я мог работать с данными в PHP, а не с форматированной разметкой.Возможно ли это?

Это было полезно?

Решение

Чтобы немного расширить (правильный) ответ Ришава, блоки являются "стандартным" элементом для заполнения областей.Регионы в вашем page.tpl.php определяют общую планировку (напримерверхний колонтитул, несколько столбцов / боковых панелей и нижний колонтитул - все, что вам нужно).В пределах региона вы можете разместить только одну вещь (например,представление), но обычно больше в виде нескольких блоков.Порядок, в котором они отображаются в регионах, определяется весом блоков.

Вы можете создавать блоки непосредственно в модуле views, добавляя отображения типа block в "базовое" определение вида.Кроме того, каждое меню, которое вы определите, будет доступно в виде блока.Также довольно просто создавать свои собственные блоки в пользовательских модулях, предоставляя вам полный контроль над их содержимым (см. hook_block() для этого).Таким образом, например, вы можете разбивать формы на блоки (примером этого является блок входа в стандартную установку Drupal).

Другие советы

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

Вы даже можете использовать create custom blocks и использовать представления в них.

Это зависит от структуры макета, который у вас есть.

Представление (список содержимого) - это запрос к базе данных.Регион - это область страницы (левая боковая панель, нижний колонтитул и т.д.).Регионы назначаются в шаблоне страницы (the tpl.php's) и будут варьироваться в зависимости от используемой вами темы.Как правило, вторичный контент (включая, но не ограничиваясь, Просмотры) размещается с помощью блоков.Блоки отображаются, когда они назначены региону ("Новые пользователи" в "Правой боковой панели").Кроме того, представления также могут быть встроены в шаблон страницы (либо внутри, либо за пределами региона).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top