Использование панелей для компоновки по сравнению с пользовательскими файлами.tpl


Я работаю над некоторыми макетами, которые не совсем сложны, но определенно выходят за рамки основных возможностей Drupal.

Действительно кажется, что в Drupal есть 20 способов сделать что-то одно.

Следует ли вам редактировать файлы .tpl с разными регионами для определенных типов контента и узлов, или мне просто сшить все вместе с панелями ?

У меня есть опасение, что панели сделают все более сложным и начнут загромождать ситуацию с точки зрения производительности.

Author: kiamlaluno, 2015-08-02

3 answers

Модуль панелей

" Менеджер страниц обучения" - это интересный/удивительный набор видеороликов. Они содержат различные темы, связанные с модулем Панелей. После того, как вы просмотрели эти видео, вы поймете, что будет трудно приблизиться ко всем функциям, которые поставляются с модулем Панели.

Вот краткое изложение всего набора видеороликов по этой теме (цитата по ссылке выше):

  • Менеджер страниц позволяет собирать и управляйте контекстуальной информацией гибким и последовательным способом. Это важная часть построения инфраструктуры на веб-сайтах Drupal, и вы должны знать, как использовать этот модуль.
  • Серия скринкастов предназначена для опытных разработчиков Drupal.
  • В эпизодах 1, 2 и 3 представлены самые основные понятия, такие как пользовательские страницы, варианты, правила выбора и (в некоторой степени) контекстуальные объекты.
  • Эпизоды 4, 5, 6 и 7 рассказывают о панелях с акцентом на мнения интеграция, но также несколько слов об эффективном кэшировании.
  • Эпизоды 8 и 9 о контроле доступа, пунктах меню и, не в последнюю очередь, малоизвестном, но очень полезном модуле контекстного администрирования.
  • В эпизодах 10 и 11 больше говорится об использовании контекстных объектов в диспетчере страниц, в том числе об использовании представлений в качестве контекста. Это, имхо, где реальная сила в менеджере страниц.
  • В эпизодах 12 и 13 собраны различные фрагменты и фрагменты, например, как использовать панели, чтобы легко переставлять форма редактирования узла, настройки импорта/экспорта и некоторые дополнительные модули, которые можно использовать с менеджером страниц.

Обратитесь к Поясняющим панелям: Обзор для разработчиков Drupal для еще одного отличного объяснения панелей.

Еще несколько слов о менеджере страниц:

  • В Drupal 8Менеджер страниц стал отдельным модулем, в то время как ранее (до Drupal 7) он был частью модуля CTools. Вот еще несколько цитат из (Связанный с D8) страница проекта:

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

    Как и менеджер страниц Drupal 7, он предоставляет концепцию "вариантов страниц", каждый из которых имеет свои собственные условия выбора.

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

    Он использует ядро Conditions, Context, и Blocks API для выполнения это.

  • В Drupal 7 Менеджер страниц был основой модуля Панелей.

Модуль компонента

Когда говорят о макете в Drupal, часто также упоминаются "Блоки". Если вы также используете (отличный) модуль Bean, он откроет множество новых возможностей. Вот цитата об этом (со страницы проекта):

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

Видеоурок Учебник по модулю Drupal Bean - использование пользовательского интерфейса администратора Bean предоставляет отличное введение, чтобы действительно понять возможности этого модуля и то, что вы можете с ним делать (используя только методы создания сайтов, без использования пользовательского кода). Это также показывает, как боб модуль преобразует блоки Drupal в объекты, доступные для заполнения.

См. Мои ответы на вопрос о " Как контролировать изменения блоков перед публикацией? "для получения более подробной информации о модуле Bean (что вы также можете сделать и т. Д.).

PS: Модуль Bean запущен только с D7 (из-за "сущностей", конечно, которые были представлены только в D7), и уже зарегистрировано более 22 тыс. установок. И он был интегрирован (уже) в ядро в D8 (см. Это выпуск для получения дополнительной информации). Тем, кто еще не использует его, определенно следует начать изучать его в рамках подготовки к обновлению до D8 в один прекрасный день.

 6
Author: Pierre.Vriens, 2017-04-13 12:47:02

Раньше я использовал панели для всего, но с тех пор вернулся к файлам tpl - даже для полей - просто для того, чтобы изменения внешнего вида и макета сайта можно было отслеживать в коде и версировать с помощью git. Я даже перестал использовать регионы и блокирую все вместе. Любые представления или блоки (из модулей, которые предоставляют определенные материалы, такие как модуль полноты профиля), которые мне нужны, вызываются в коде, а проверки доступа выполняются либо в коде, либо через конфигурацию представления.

Ключ - это колодец организованная структура папок в вашей папке /templates.

Однако, если у вас есть не разработчики, которым необходимо внести изменения в макет, я бы использовал панели.

 5
Author: Adrian, 2015-08-02 21:48:45

Я, конечно, долгое время сопротивлялся модулю панелей . Но потом я проглотил пулю и выпил кулайд, и теперь я определенно никогда не вернусь.

Вместо каталога templates/, набитого до отказа переопределениями, у меня обычно есть только один файл (чтобы удалить двоеточие или что-то глупое). У меня есть каталог panels/layouts с одним или двумя макетами, которые немного напуганы, с парой дополнительных классов, чтобы помочь тематизации. И у меня есть куча возможностей.

Я думаю, что макет - это один из небольших задач, для которых я теперь полагаюсь на панели. Более мощными являются:

  • селекторы компоновки для каждой роли,
  • видимость для каждой панели,
  • селекторы CSS для каждой панели (что значительно расширяет мой CSS на основе компонентов)
  • супер-супер плотная Интеграция представлений .

Время от времени на дороге возникает излом. Но по большому счету это намного (намного) более чистый опыт.

 2
Author: Queenvictoria, 2015-08-19 21:55:53