Drupal: файлы шаблонов, модули и типы контента для продвинутой темы

Введение

Я пытаюсь преобразовать свой первый дизайн HTML / CSS в тему для Drupal. Я использовал ModX для нескольких дизайнов и ценю возможность создавать различные шаблоны страниц и настраиваемые переменные, которые будут назначены этим шаблонам. Однако, похоже, у меня возникли проблемы с переходом.

Сайт, над которым я работаю в Drupal, предназначен для агента по недвижимости. Каждая страница / раздел будет иметь свой набор контента, связанный с ним, и должен будет отображать только этот контент. Например, будет страница для текущих списков, каждая из которых будет отформатирована под собственный тип контента. Однако, когда я вызываю контент на домашней странице (или на других страницах), я не хочу видеть эти данные листинга.


Макет

Макет сайта и регионов, связанных с каждой страницей / разделом, выглядит следующим образом:

  • Home
    • Spotlight
    • Рекомендуемые 1
    • Рекомендуемые 2
  • About
    • Spotlight
    • Bios - Профили каждого агента (каждый будет узлом с именем, контактной информацией, рисунком и т. Д.), Перечисленными на странице; перечислено несколько узлов
    • Боковая панель
  • Listings
    • Spotlight
    • Списки - Профили свойств (каждый будет узлом с местоположениями, базовой информацией, рисунком и т. Д.), Перечисленными на странице; перечислено несколько узлов
    • Боковая панель
  • Services
    • Spotlight
    • Контент - текстовая область общего абзаца
    • Боковая панель
    • Новости / Блог
    • Новости / элементы блога - список статей с резюме и ссылками на полную статью.
    • Боковая панель

Каждая страница / раздел будет использовать один и тот же верхний и нижний колонтитулы.


Проблема

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


person theandym    schedule 10.03.2010    source источник


Ответы (2)


Это довольно общий вопрос, и ваше описание довольно расплывчато в отношении важных различий, таких как страница, раздел сайта и регион страницы. Тем не менее, несколько общих советов: начните с установки модуля администратора. Затем разместите весь свой контент в нужных местах с помощью чужой темы, например Гарланд, прежде чем вы начнете создавать свои собственные темы. Вы должны уйти довольно далеко, не касаясь кода. Используйте CCK для определения структуры вашего контента. У вас уже должен быть тип для страницы, и похоже, вы захотите добавить тип для функции, биографии, списка и сообщения в блоге. В зависимости от деталей вам может потребоваться добавить некоторые дополнительные полевые модули, например если у вас есть изображения, вам, вероятно, понадобится модуль imagefield.

После того, как вы определили типы контента, настройте pathauto и начните добавлять контент.

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

На этом этапе вы захотите начать контролировать, как отдельные элементы (узлы) выглядят в разных контекстах. Вот когда вы начинаете тематику. Для этого я бы установил модуль devel, посмотрел, что делают другие темы, и вызвал бы dsm () для любых переменных, которых вы не понимаете, чтобы увидеть, как они выглядят.

Как правило, вы можете быстро получить помощь по конкретным вопросам на каналах Drupal IRC.

person Scott Reynen    schedule 10.03.2010

Самый простой способ сделать то, что вы хотите, - это поместить ваш пользовательский контент в блоки и установить настройки доступа для блоков только на определенных страницах. Так, например, если у вас есть контент, который вы хотите отображать в / spotlight или / node / 22 или что-то в этом роде, вы просто создаете настраиваемый блок (Создание сайта -> Блоки), а затем в настройках установите для блока только отображение для этого узла.

person coderintherye    schedule 14.03.2010