允许您的用户使用实体浏览器模块选择 Drupal 实体

已发表: 2022-02-16

在这篇博文中,我将向您展示如何让 Drupal 用户使用“实体浏览器”模块来选择实体。

本教程是由正在构建书评网站的 OSTraining 客户请求的。 客户想要使用实体浏览器,以便他们可以创建此功能:

  • 该网站有两种内容类型:书籍和书评。
  • 当用户创建新的书评时,他们可以使用视图来搜索和选择他们正在审阅的书。 例如,如果他们正在查看“战争与和平”,他们可以搜索现有的“战争与和平”节点。
  • 当书评发布时,所选节点将嵌入书评中。

这个客户请求可以在实体浏览器模块的帮助下实现。 该模块提供了一个浏览器,Drupal 用户可以使用该浏览器将节点嵌入到其站点的其他部分。

本教程将带您完成站点构建练习,并向您展示如何使用实体浏览器模块。


步骤1。 安装所需的模块

为了使用实体浏览器,您必须安装以下模块:实体浏览器和混沌工具。

使用您喜欢的方法下载并安装这些模块。 我正在使用作曲家:

 composer install drupal/entity_browser
 composer install drupal/ctools

允许您的用户使用实体浏览器模块选择 Drupal 实体

这会将模块放置在您的 Drupal 安装中。 之后单击Extend ,搜索这两个模块,启用它们并单击Install


第2步。 创建分类术语

在此示例中,书籍按其类型分类,因此我们需要一个名为“书籍类型”的词汇表。

  • 单击结构 > 分类 > 添加词汇表。
  • 给词汇一个合适的名称和描述。
  • 单击保存。

  • 列表选项卡上,单击添加术语。

添加以下术语:

  • 冒险
  • 食谱
  • 戏剧
  • 幻想
  • 恐怖


步骤#3。 创建图书内容类型

接下来,我们将为我们的书籍创建内容类型。 我们将使用在上一步中创建的 Book Genre 分类法。

  • 单击结构 > 内容类型 > 添加内容类型。
  • 创建一个名为Book的内容类型,并使用它们的默认设置添加这些字段:

桌子

  • 再次单击添加字段
  • Reference下的下拉列表中,选择 Taxonomy term 并给它一个适当的标签。
  • 单击保存并继续。

  • Allowed number of values保留为 1,然后单击Save field settings
  • 向下滚动到“编辑”屏幕的底部,然后选择要在内容类型中引用的词汇。 在这种情况下:书籍类型
  • 点击保存设置

  • 单击管理表单显示选项卡。
  • 查找图书类型字段并将其小部件更改为复选框/单选按钮。
  • 单击保存。


步骤4。 创建图书内容

现在是时候创建 5 到 10 本书,并将每一本书分配给特定的流派。

  • 单击内容 > 添加内容 > 书籍。


步骤#5。 创建视图

创建一些示例内容后,您现在可以创建视图了。 此视图将显示在实体浏览器上,因此您可以在创建书评时选择一本书。

  • 单击结构 > 视图 > 添加视图。
  • 创建一个标题为可用书籍的视图。
  • 显示Book 类型的内容。
  • 取消选中页面和阻止设置。
  • 单击保存并编辑。

  • 单击“显示”部分下的“添加”按钮。
  • 选择实体浏览器。

  • 单击排序条件旁边的重新排列并删除内容:在 desc 条件下创作
  • 单击应用。
  • 单击过滤条件旁边的添加并选择图书类型字段。
  • 单击添加并配置过滤条件。

  • 确保选择了图书流派词汇
  • 选择类型更改为下拉。
  • 单击应用并继续。

  • 选中向访问者公开此过滤器,以允许他们更改它。
  • 确保将运算符选择为Is one of。
  • 单击应用。

  • Title字段添加到SORT条件。
  • 保留默认配置升序排序,然后单击应用。

这将按字母顺序显示视图中的书籍。 您必须插入更多字段才能显示在视图上。 目前,只有节​​点标题可用。

  • 单击字段部分上的添加按钮。
  • 查找书籍封面字段,然后单击添加并配置字段。

  • 选择图像样式(缩略图 100x100)并单击应用。
  • 再次单击添加以添加实体浏览器批量选择表单字段。
  • 单击添加并配置字段。

  • 单击应用。

如果要使用实体浏览器,则必须使用此字段,因此要特别注意这一点。

  • 更改视图的格式,例如更改为网格。
  • 单击应用两次。

Views UI 中的视图配置应如下图所示。 单击保存以保存视图。


步骤#6。 配置实体浏览器模块

在这一步中,我们将选择本教程中的设置关键模块:实体浏览器。

  • 单击配置 > 实体浏览器

  • 单击添加实体浏览器。
  • 给它一个适当的标签,例如,图书浏览器。
  • 作为显示插件选择iFrame。
  • 单击下一步。

  • 选中自动打开实体浏览器,然后单击下一步。

  • 再单击两次Next ,直到您进入Widgets配置页面。
  • 单击下拉列表以选择查看小部件插件。
  • 更改小部件的标签,例如:“选择一本书”。
  • 选择您在步骤#5 中配置的视图。
  • 单击完成。


步骤#7。 创建书评内容类型

我们的网站几乎完成了。 在完成之前,我们确实需要创建书评人可以使用的内容类型:

  • 单击结构 > 内容类型 > 添加内容类型。
  • 将此内容类型命名为书评。
  • 添加一个新字段,从参考部分选择内容。
  • 给这个字段一个适当的标签,例如,这本书。
  • 单击保存并继续。
  • 要引用的项目类型选项中选择内容。
  • 单击保存字段设置。

  • 单击保存设置。
  • 单击此内容类型的管理表单显示选项卡。
  • 找到引用字段并将其小部件更改为实体浏览器。
  • 单击右侧的齿轮并选择图书浏览器(或任何您在步骤#6 中创建的浏览器。
  • 单击更新。
  • 单击保存。

请注意,您还可以选择仅显示实体标签完整呈现的实体。 您可以使用视图模式(例如 Teaser)在这个新的书评内容类型上呈现实体。


步骤#8。 创建书评

现在我们的网站几乎可以使用了。 让我们创建一个书评,看看是否一切正常。

  • 单击内容 > 添加内容 > 书评。
  • 给这个节点一个适当的标题和正文。
  • 进一步向下滚动,您会发现一个名为 THE BOOK 的折叠部分(即该字段的名称)。
  • 单击此字段,您将看到实体浏览器,您可以在其中选择您在此书评中引用的书。
  • 此外,顶部有一个暴露的过滤器,因此您可以选择仅与一种类型有关的书籍。
  • 选择一个流派,然后单击应用。

浏览器将只向您显示该类型的书籍。

  • 选择一本书并单击选择实体。

  • 嵌入实体后单击保存,您将在Book review节点上看到引用的Book实体。

最后结果

本教程展示了 Drupal 8 的“实体浏览器”模块的强大功能。希望你喜欢它。 谢谢阅读!