Разрешите своим пользователям выбирать сущности 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 с помощью модуля обозревателя сущностей

Это поместит модули в вашу установку 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. Надеюсь, он вам понравился. Спасибо за чтение!