如何在 Drupal 7 中制作自定义菜单
How to make a custom menu in Drupal 7
我是 Drupal 的新手,我想在我的 Drupal 7 安装中创建一组 Metro 风格的 Web 应用程序快捷方式。
我想让它动态化,这样任何有权限的用户都可以在 Drupal 中编辑它们。
据我所知,我需要以下字段:
Icon URL / Icon Image
Title
Body
Color
URL
那么,我是否应该创建自定义类型 "My Custom Menu"
并使用 Views module
检索它们和一个 views-MYVIEW.tpl.php
文件?或者可以用其他更简单的方法来完成。
非常感谢。
我会使用节点和视图来实现这一点。我认为您不需要为此使用 tpl,我认为一些 css 就可以了。
- 只需使用这些字段创建您的节点
- 将您的视图创建为无序列表
- 我会下订单颜色(隐藏),url(隐藏),全局:自定义文本,图像,标题,body,全局:自定义文本
- 将视图行上的 css 设置为向左浮动
- 将视图行上的 css 设置为 50%,您可能需要在此处进行一些调整以允许填充
- 然后只需调整您的 css 即可让其他元素就位
对于第一个全局自定义文本
- 删除标签
- 转到样式手风琴并将自定义字段HTML设置为None
- 转到样式手风琴并将自定义字段和标签包装器HTML设置为None
- 将文本设置为
<div class="[color_field]"><a href="[url_field]">
对于第二个全局自定义文本
- 删除标签
- 转到样式手风琴并将自定义字段HTML设置为None
- 转到样式手风琴并将自定义字段和标签包装器HTML设置为None
- 将文本设置为
</a></div>
全局自定义文本字段将为您的颜色和 link 的视图行中的所有字段创建一个包装器。查看视图中字段名称的 替换模式 手风琴,我在上面使用 color_field 和 url_field 作为占位符
我认为最好的方法是使用视图,然后使用 css 设置样式。在您的视图格式中,使用 GRID 或 MASONRY API 来实现地铁布局并显示 FIELDS。使用字段从发布的内容中获取您想要的内容。
您可以按照其他人的建议,使用特殊的内容类型和视图来获取该类型的节点。您也可以使用 views_get_view_result()
https://api.drupal.org/api/views/views.module/function/views_get_view_result/7
只获取节点数组并自行遍历它们,而不使用任何模板文件。这样你就可以完全使用你的 HTML 并且只打印出这个函数返回的结果数组中的值。
但是,您可以采用完全不同的方式。如果您将此显示到您的主页,您可以将所有描述您的菜单的字段添加到主页内容类型,并且您可以使用字段收集模块,它允许您重复字段组。因此,您可以将描述单个菜单项的所有字段组成一组,并使其可重复。在您的主页模板文件中,您将简单地获得这些字段组/菜单项对象的数组。
我是 Drupal 的新手,我想在我的 Drupal 7 安装中创建一组 Metro 风格的 Web 应用程序快捷方式。
我想让它动态化,这样任何有权限的用户都可以在 Drupal 中编辑它们。
据我所知,我需要以下字段:
Icon URL / Icon Image
Title
Body
Color
URL
那么,我是否应该创建自定义类型 "My Custom Menu"
并使用 Views module
检索它们和一个 views-MYVIEW.tpl.php
文件?或者可以用其他更简单的方法来完成。
非常感谢。
我会使用节点和视图来实现这一点。我认为您不需要为此使用 tpl,我认为一些 css 就可以了。
- 只需使用这些字段创建您的节点
- 将您的视图创建为无序列表
- 我会下订单颜色(隐藏),url(隐藏),全局:自定义文本,图像,标题,body,全局:自定义文本
- 将视图行上的 css 设置为向左浮动
- 将视图行上的 css 设置为 50%,您可能需要在此处进行一些调整以允许填充
- 然后只需调整您的 css 即可让其他元素就位
对于第一个全局自定义文本
- 删除标签
- 转到样式手风琴并将自定义字段HTML设置为None
- 转到样式手风琴并将自定义字段和标签包装器HTML设置为None
- 将文本设置为
<div class="[color_field]"><a href="[url_field]">
对于第二个全局自定义文本
- 删除标签
- 转到样式手风琴并将自定义字段HTML设置为None
- 转到样式手风琴并将自定义字段和标签包装器HTML设置为None
- 将文本设置为
</a></div>
全局自定义文本字段将为您的颜色和 link 的视图行中的所有字段创建一个包装器。查看视图中字段名称的 替换模式 手风琴,我在上面使用 color_field 和 url_field 作为占位符
我认为最好的方法是使用视图,然后使用 css 设置样式。在您的视图格式中,使用 GRID 或 MASONRY API 来实现地铁布局并显示 FIELDS。使用字段从发布的内容中获取您想要的内容。
您可以按照其他人的建议,使用特殊的内容类型和视图来获取该类型的节点。您也可以使用 views_get_view_result()
https://api.drupal.org/api/views/views.module/function/views_get_view_result/7
只获取节点数组并自行遍历它们,而不使用任何模板文件。这样你就可以完全使用你的 HTML 并且只打印出这个函数返回的结果数组中的值。
但是,您可以采用完全不同的方式。如果您将此显示到您的主页,您可以将所有描述您的菜单的字段添加到主页内容类型,并且您可以使用字段收集模块,它允许您重复字段组。因此,您可以将描述单个菜单项的所有字段组成一组,并使其可重复。在您的主页模板文件中,您将简单地获得这些字段组/菜单项对象的数组。