Поместите блоки в ваш контент с EBA
Ранее на этом сайте я писал о рендеринг блоков программно а также добавление вещей в контент для управления рядом с полями , Пришло время объединить два! Во многих проектах мы нуждаемся в последовательной визуализации блока для всего контента определенного типа. Например:
- Вы пытаетесь разместить рекламные блоки или фиксированный код javascript между полями в содержимом страницы, а не просто помещать их в области вокруг содержимого?
- Вы хотите показать стандартную часть контента (мы используем бобовой модуль для расширенного контента в блоках) для размещения на всем контенте определенного типа, возможно, объясняя о продуктах на сайте брошюры или как использовать веб-формы?
- Вы хотите показать списки ссылок (возможно, как блоки меню ) в профилях пользователей, как полезные ссылки на общие направления?
Обратите внимание, что все эти примеры предназначены для показа одного и того же блока в разном контенте. Если вы хотите иметь возможность показывать разные блоки на каждой сущности , вы можете использовать Блок справочного модуля , который предоставляет поле для ссылки на блок. Это работает аналогично Справочный модуль , позволяя вам по-прежнему повторно использовать блоки и показывать их в содержимом сущности, но означает, что каждый узел, нуждающийся в блоке, должен быть отредактирован, а поле задано индивидуально, поэтому бесполезно, если вы хотите, чтобы один и тот же блок отображался на каждом узле , Другой альтернативой будет что-то вроде Модуль блочного фильтра , который позволяет визуализировать блок внутри содержимого текстового поля (например, тела), используя токен с входным фильтром. Когда я имею в виду размещение блоков внутри содержимого, я имею в виду не содержимое содержимого поля, а общее содержимое объекта, между его полями.
Нам нравится использовать Модуль Entity Views Attachment (EVA) для встраивания Просмотры в нашем контенте, поэтому я решил написать Модуль Entity Block Attachment (EBA) тесно смоделировано на том, как EVA работает для строителей сайта. Теперь, без необходимости писать какой-либо код, строители сайтов могут настроить блоки для отображения на узлах, условиях таксономии, коммерческих продуктах или любых других типах сущностей с помощью EBA!
EBA использует Drupal's hook_field_extra_fields () система, которая у меня есть ранее написано о объявить сконфигурированные блоки для отображения на любом объекте данного пакета / типа среди полей этого объекта. Стандартная система блоков Drupal может помочь вам размещать блоки в областях вокруг сторон любого узла определенного типа, но EBA расширяет это, чтобы применить к любому настраиваемому объекту и показать блок в содержимом вашего узла / профиля / термина или любой вид сущности.
Как и в случае с другими «псевдополями», они могут быть переупорядочены между существующими полями содержимого с помощью стандартного интерфейса полей «Управление отображением».
Мы используем методы рендеринга блоков программно, которые у меня есть ранее обсуждалось чтобы затем визуализировать блоки так, чтобы можно было использовать обычную тематику блоков в Drupal.
Те, кто оценят, не будут изучать новые шаблоны или системы верстки, такие как существующие альтернативы, Дисплей Люкс а также Панели Требуется, и создатели сайтов оценят простоту, которую обеспечивает EBA, поскольку они могут просто продолжать использовать экраны, с которыми они знакомы, для достижения своих целей.
Иди и попробуй новый модуль EBA! Что вы используете для встраивания блока в ваш контент?
Что вы используете для встраивания блока в ваш контент?