Разрешите своим пользователям выбирать сущности Drupal с помощью модуля обозревателя сущностей
Опубликовано: 2022-02-16В этом сообщении блога я собираюсь показать вам, как разрешить пользователям Drupal выбирать сущности с помощью модуля «Браузер сущностей».
Это руководство было запрошено клиентом OSTraining, который создает сайт обзоров книг. Клиент хотел использовать Entity Browser, чтобы создать эту функцию:
- На сайте есть два типа контента: книги и обзоры книг.
- Когда пользователи создают новый обзор книги, они могут использовать представление для поиска и выбора книги, которую они рецензируют. Например, если они просматривают «Войну и мир», они могут искать существующий узел «Война и мир».
- Когда рецензия на книгу будет опубликована, выбранный узел будет встроен в рецензию на книгу.
Этот запрос клиента может быть выполнен с помощью модуля Entity Browser. Этот модуль предоставляет браузер, который пользователи Drupal могут использовать для встраивания узлов в другие части своего сайта.
Этот учебник проведет вас через упражнение по созданию сайта и покажет, как использовать модуль Entity Browser.
Шаг 1. Установите необходимые модули
Чтобы использовать Entity Browser, вам необходимо установить следующие модули: Entity Browser и Chaos Tools.
Используйте предпочитаемый метод для загрузки и установки этих модулей. Я использую Композитор:
composer install drupal/entity_browser
composer install drupal/ctools
Это поместит модули в вашу установку Drupal. После этого нажмите « Расширить », найдите оба модуля, включите их и нажмите « Установить ».
Шаг 2. Создайте термины таксономии
В этом примере книги разбиты по жанрам, поэтому нам понадобится словарь под названием «Жанр книги».
- Щелкните Структура > Таксономия > Добавить словарь.
- Дайте словарю правильное название и описание.
- Щелкните Сохранить.
- На вкладке Список нажмите Добавить термин.
Добавьте следующие термины:
- Приключение
- Поваренная книга
- Драма
- Фантазия
- Фильм ужасов
Шаг 3. Создайте тип контента Книга
Далее мы создадим тип контента для наших книг. Мы будем использовать таксономию жанра книги, созданную на предыдущем шаге.
- Щелкните Структура > Типы содержимого > Добавить тип содержимого.
- Создайте тип контента под названием « Книга» и добавьте эти поля с настройками по умолчанию:
- Нажмите Добавить поле еще раз.
- В раскрывающемся списке в разделе « Ссылка » выберите «Термин таксономии» и присвойте ему соответствующую метку.
- Нажмите Сохранить и продолжить.
- Оставьте Допустимое количество значений равным 1 и нажмите Сохранить настройки поля .
- Прокрутите вниз до нижней части экрана редактирования и выберите словарь, на который вы хотите ссылаться в своем типе контента. В данном случае: Жанр книги
- Нажмите Сохранить настройки
- Перейдите на вкладку Управление отображением формы .
- Найдите поле « Жанр книги» и измените его виджет на « Флажки/переключатели».
- Щелкните Сохранить.
Шаг №4. Создайте содержание книги
Теперь пришло время создать от 5 до 10 книг и отнести каждую из них к определенному жанру.
- Нажмите «Содержимое» > «Добавить содержимое» > «Книга».
Шаг № 5. Создать вид
После создания некоторого демонстрационного содержимого вы готовы создать представление. Это представление будет отображаться в обозревателе сущностей, чтобы вы могли выбрать книгу во время создания рецензии на книгу.
- Щелкните Структура > Представления > Добавить представление.
- Создайте представление с заголовком Доступные книги.
- Показать содержимое типа Книга.
- Оставьте параметры страницы и блока не отмеченными.
- Щелкните Сохранить и изменить.
- Нажмите кнопку « Добавить » в разделе « ДИСПЛЕИ ».
- Выберите Браузер сущностей.
- Щелкните Переставить рядом с критериями СОРТИРОВКИ и удалите критерий Содержимое: создано по описанию .
- Нажмите Применить.
- Нажмите ДОБАВИТЬ рядом с критериями ФИЛЬТР и выберите поле Жанр книги .
- Щелкните Добавить и настройте критерии фильтра.
- Убедитесь, что выбран словарный запас книжного жанра .
- Измените тип выбора на раскрывающийся список.
- Нажмите Применить и продолжить.
- Установите флажок Показать этот фильтр посетителям, чтобы они могли его изменить.
- Убедитесь, что оператор выбран как один из.
- Нажмите Применить.

- Добавьте поле Заголовок к критериям СОРТИРОВКИ .
- Оставьте конфигурацию по умолчанию Сортировать по возрастанию и нажмите Применить.
Это представит книги в представлении в алфавитном порядке. Вам нужно вставить еще несколько полей, которые будут отображаться в представлении. На данный момент доступно только название узла.
- Нажмите кнопку « Добавить » в разделе « Поля» .
- Найдите поле обложки книги и нажмите « Добавить и настроить поля».
- Выберите стиль изображения (миниатюра 100x100) и нажмите «Применить».
- Нажмите «Добавить» еще раз, чтобы добавить поле формы массового выбора обозревателя сущностей .
- Нажмите Добавить и настройте поля.
- Нажмите Применить.
Использование этого поля является обязательным, если вы хотите использовать Entity Browser, поэтому обратите на это особое внимание.
- Измените формат представления, например, на Сетку.
- Нажмите «Применить » дважды.
Конфигурация представления в пользовательском интерфейсе представлений должна выглядеть так, как показано на рисунке ниже. Щелкните Сохранить , чтобы сохранить представление.
Шаг №6. Настройте модуль Entity Browser
На этом этапе мы выберем настройку ключевого модуля в этом руководстве: Entity Browser.
- Щелкните Конфигурация > Браузеры сущностей.
- Щелкните Добавить обозреватель объектов.
- Дайте ему соответствующую метку, например, Браузер книг.
- В качестве плагина отображения выберите iFrame.
- Щелкните Далее.
- Установите флажок «Автоматически открывать браузер сущностей» и нажмите «Далее».
- Нажмите « Далее » еще два раза, пока не попадете на страницу конфигурации виджетов .
- Щелкните раскрывающийся список, чтобы выбрать плагин View Widget.
- Измените метку виджета, например: «Выберите книгу».
- Выберите представление, которое вы настроили на шаге № 5.
- Нажмите Готово.
Шаг №7. Создайте тип контента «Рецензия на книгу».
Наш сайт почти готов. Прежде чем мы закончим, нам нужно создать тип контента, который смогут использовать рецензенты книг:
- Щелкните Структура > Типы содержимого > Добавить тип содержимого.
- Назовите этот тип контента Обзор книги.
- Добавьте новое поле, в разделе « Справочник » выберите « Содержимое».
- Дайте этому полю соответствующую метку, например, Книга.
- Нажмите Сохранить и продолжить.
- В параметре Тип элемента для ссылки выберите Содержимое.
- Щелкните Сохранить настройки поля.
- Щелкните Сохранить настройки.
- Щелкните вкладку Управление отображением формы для этого типа контента.
- Найдите поле ссылки и измените его виджет на браузер сущностей.
- Нажмите на шестеренку справа и выберите Браузер книг (или как вы назвали браузер, который вы только что создали на шаге №6.
- Щелкните Обновить.
- Щелкните Сохранить.
Обратите внимание, что у вас также есть возможность отобразить только метку объекта или полностью визуализированный объект . Вы можете использовать режимы просмотра (например, тизер), чтобы представить объект в этом новом типе контента обзора книги .
Шаг №8. Создавайте рецензии на книги
Теперь наш сайт почти готов к использованию. Давайте создадим обзор книги и посмотрим, все ли работает правильно.
- Нажмите «Содержимое» > «Добавить содержимое» > «Рецензия на книгу».
- Дайте этому узлу правильный заголовок и основной текст.
- Прокрутите вниз, и вы найдете свернутый раздел под названием КНИГА (это название поля).
- Щелкните это поле, и вы увидите Браузер сущностей, где вы можете выбрать книгу, на которую вы ссылаетесь в этом обзоре книги.
- Кроме того, сверху есть открытый фильтр, поэтому вы можете выбирать книги, относящиеся только к одному жанру.
- Выберите жанр и нажмите « Применить».
Браузер покажет вам только книги этого жанра.
- Выберите книгу и щелкните Выбрать объекты.
- После внедрения объекта нажмите « Сохранить », и вы увидите указанный объект « Книга » в узле «Рецензирование книги» .
Этот туториал продемонстрировал возможности модуля Entity Browser для Drupal 8. Надеюсь, он вам понравился. Спасибо за чтение!