如何使用 Drupal 8 的菜单项附加模块

已发表: 2022-02-16

超级菜单不再是一种设计趋势,而是大多数与新闻或电子商务相关的网站的重要组成部分。

Drupal 8 的 Menu Item Extras 模块通过允许站点构建器向菜单项添加字段来改进 Drupal 中的默认菜单系统。 这样,只需几个简单的步骤就可以创建一个大型菜单。

跟随学习如何使用这个模块。 开始吧!

第 1 步:安装所需的模块

除了 Menu Item Extras 模块,您还需要安装 Viewfield。 Viewfield 提供了一个字段,该字段包含对 View 的引用,并在显示包含该字段的实体时呈现它。

  • 打开PC 的终端应用程序。
  • 类型
    • 作曲家需要 drupal/viewfield
    • 作曲家需要 drupal/menu_item_extras

200414 菜单项附加 001200414 菜单项附加 001

下载后启用这两个模块。

  • 单击扩展。
  • 检查两个模块。
  • 单击安装。

200414 菜单项附加 003


步骤 #2:创建分类系统

也许“系统”这个词不太合适,因为我们只会创建一个包含十个相关术语的词汇表。 但是,此示例将解释基础知识,因此您将来可以使用更复杂的分类系统。

  • 单击结构 > 分类 > 添加词汇表。
  • 输入名称“主题”,然后单击“保存”。
  • 单击添加术语,将下面详述的所有术语一一添加。
    • 话题
      • D8
      • Symfony
      • 可湿性粉剂
      • Magento
      • CSS
      • HTML
      • JS
      • PHP
      • Python
      • 开发运维

200414 菜单项附加 004


步骤#3:创建内容类型

出于本教程的目的,我们将使用具有以下字段的 2 种内容类型:

  • 服务
    • 服务图像/图像/允许的值数:1
    • 介绍文本/文本(格式化)/允许的值数:1
    • 说明/默认字段

200414 菜单项附加 005

  • 博客
    • 类别/分类术语/允许的值数量:无限制
    • 说明/默认字段

200414 菜单项附加 006

确保在创建分类字段时选择参考类型(主题)。

200414 菜单项附加 007


步骤#4:创建内容

我们将创建 3 个 Service 类型的节点:

  • 教程
  • 视频
  • 图书

这些节点中的每一个都将与巨型菜单中的第二级元素相关联。 另一方面,我们将创建大约 10 个博客类型的节点,并与它们相关联的不同术语。 确保包含 2 个术语(例如:D8、WP)的频率高于其他术语。

200414 菜单项附加 008

内容屏幕应该看起来或多或少类似于下图的结束。

200414 菜单项附加 009


步骤#5:创建菜单项

主菜单的第一级将具有以下菜单项:

  • 关于
  • 资源
  • 接触

每个菜单项都会有一个额外的(额外的)字段。 该字段将设置在菜单的第二级,即超级菜单中的每个卡项。 该字段将允许我们呈现每个视图块。

  • 单击结构 > 菜单。
  • 单击编辑菜单,以编辑主导航。

200414 菜单项附加 010

  • 单击添加链接 3 次以添加缺少的一级菜单项。
  • 每次输入菜单项名称时单击保存。

使用特殊标签仅显示链接文本。

200414 菜单项附加 011

200414 菜单项附加 012

创建并重新排列菜单的链接后,

  • 单击管理字段 > 添加字段,将字段添加到菜单项。
  • 选择Viewfield 类型的字段。
  • 它一个适当的名称和标签。
  • 单击保存并继续。

200414 菜单项附加 013

  • 允许的值数量设置为无限制。
  • 单击保存字段设置

200414 菜单项附加 014

您可以选择将默认视图链接到此特定字段。 将这些字段留空。

  • 向下滚动并单击保存设置
  • 单击管理显示。

200414 菜单项附加 015

  • 隐藏菜单卡标签。
  • 单击保存。

步骤#6:创建视图

  • 单击结构 > 视图 > 添加视图
  • 显示服务类型的内容。
  • 使用未格式化的字段列表创建一个块。
  • 选择每个块显示 3 个项目。
  • 单击保存并编辑。

200414 菜单项附加 016

  • 添加服务图像字段
  • 图像样式设置为缩略图并将图像链接到内容。
  • 单击应用

200414 菜单项附加 017

  • 添加Intro 文本字段。
  • 重新排列字段。
  • 单击保存。

200414 菜单项附加 018

  • 单击结构 > 视图 > 添加视图
  • 显示博客类型的内容。
  • 使用未格式化的字段列表创建一个块。
  • 选择每个块显示 1 个项目。
  • 单击保存并编辑。

如何使用 Drupal 8 的菜单项附加模块

  • 添加字段类别。
  • 单击添加并配置字段。
  • 单击多个字段设置。
  • 选择无序列表。
  • 要显示的值的数量设置为 3。
  • 单击应用。

200414 菜单项附加功能 020

  • 删除排序条件
  • 单击应用。
  • 单击保存以保存视图。

步骤#7:将视图块添加到菜单项

  • 单击结构 > 菜单
  • 编辑主导航。
  • 编辑菜单项资源。
  • 添加您在第 5 步中创建的 2 个块。
  • 单击保存。

200414 菜单项附加 021


第 8 步:CSS 样式

我不打算详细解释这段代码,因为它超出了本教程的范围。 但是,您可以在本文中研究更多有关 Drupal 视图和 CSS 网格的信息。 如果您想更多地练习大型菜单,也可以看看这篇文章。

 #block-bartik-main-menu a,
#block-bartik-main-menu li span {
background: transparent;
text-shadow: unset;
color: whitesmoke;
}

#block-bartik-main-menu .menu-level-0 {
display: grid;
grid-template-columns: repeat(4, 1fr);
}

#block-bartik-main-menu .field--name-field-menu-card .field__items {
display: flex;
}

#block-bartik-main-menu .menu-dropdown-0 {
position: absolute;
left: 0;
top: 166px;
width: 100%;
z-index: 10;
}

#block-bartik-main-menu a,
#block-bartik-main-menu li span {
background: transparent;
text-shadow: unset;
color: whitesmoke;
}

#block-bartik-main-menu .menu-item {
display: grid;
align-content: center;
justify-content: center;
}

#block-bartik-main-menu .menu-level-0 {
display: grid;
grid-template-columns: repeat(4, 1fr);
}

#block-bartik-main-menu .menu-dropdown-0 {
position: absolute;
left: 0;
width: 100%;
padding-top: 16px;
background-color: rgba(141,139,132, 0.9);
}

.view-tutorials .view-content {
display: grid;
grid-template-columns: repeat(3, 1fr);
}

.view-tutorials .views-row {
display: grid;
justify-items: center;
}

.view-tutorials .views-row span > a {
font-size: 1.3rem
}

.view-tutorials .views-row .views-field-field-intro-text {
font-size: 1rem;
}
在弹出窗口中打开
#block-bartik-main-menu a,
#block-bartik-main-menu li span {
background: transparent;
text-shadow: unset;
color: whitesmoke;
}

#block-bartik-main-menu .menu-level-0 {
display: grid;
grid-template-columns: repeat(4, 1fr);
}

#block-bartik-main-menu .field--name-field-menu-card .field__items {
display: flex;
}

#block-bartik-main-menu .menu-dropdown-0 {
position: absolute;
left: 0;
top: 166px;
width: 100%;
z-index: 10;
}

#block-bartik-main-menu a,
#block-bartik-main-menu li span {
background: transparent;
text-shadow: unset;
color: whitesmoke;
}

#block-bartik-main-menu .menu-item {
display: grid;
align-content: center;
justify-content: center;
}

#block-bartik-main-menu .menu-level-0 {
display: grid;
grid-template-columns: repeat(4, 1fr);
}

#block-bartik-main-menu .menu-dropdown-0 {
position: absolute;
left: 0;
width: 100%;
padding-top: 16px;
background-color: rgba(141,139,132, 0.9);
}

.view-tutorials .view-content {
display: grid;
grid-template-columns: repeat(3, 1fr);
}

.view-tutorials .views-row {
display: grid;
justify-items: center;
}

.view-tutorials .views-row span > a {
font-size: 1.3rem
}

.view-tutorials .views-row .views-field-field-intro-text {
font-size: 1rem;
}

200414 菜单项附加 022

我希望你喜欢这个教程。 谢谢阅读!