如何在Drupal 7中制作自定义菜单

时间:2015-07-30 18:50:42

标签: drupal drupal-7 drupal-modules drupal-views

我是Drupal的新手,我想在Drupal 7安装中为webapps创建一组Metro风格的快捷方式。 enter image description here

我想让它变得动态,所以任何拥有权限的用户都可以在Drupal中编辑它们。

从我看来,我需要以下字段:

Icon URL / Icon Image
Title
Body
Color
URL

那么,我应该创建自定义类型"My Custom Menu"并使用Views module来检索它们和views-MYVIEW.tpl.php文件吗?或者可以用其他更简单的方式完成。

非常感谢。

3 个答案:

答案 0 :(得分:1)

我会使用Node和views来实现这一目标。我不认为你需要一个tpl,我认为一些css会做得很好。

  1. 只需使用这些字段创建您的节点
  2. 将您的视图创建为无序列表
  3. 我会订购颜色(隐藏),网址(隐藏),全局:自定义文字,图片,标题,正文,全局:自定义文字
  4. 将您的css设置在views行上以向左浮动
  5. 将你在视图行上的css设置为50%,你可能需要在这里进行一些调整以允许填充
  6. 然后调整你的css以获得其他元素
  7. 第一个全球自定义文字

    1. 删除标签
    2. 转到风格手风琴并将自定义字段HTML 设置为无
    3. 转到风格手风琴并将自定义字段和标签包装HTML 设置为无
    4. 将文字设置为
    5. <div class="[color_field]"><a href="[url_field]">

      对于第二个全球自定义文本

      1. 删除标签
      2. 转到风格手风琴并将自定义字段HTML 设置为无
      3. 转到风格手风琴并将自定义字段和标签包装HTML 设置为无
      4. 将文字设置为
      5. </a></div>

        全局自定义文本字段将围绕颜色和链接的视图行中的所有字段创建包装。请查看您的替换模式手风琴,了解视图中字段的名称,我使用了color_field和url_field作为上面的占位符

答案 1 :(得分:0)

我认为最好的方法是使用视图,然后使用css设置样式。在您的视图格式中,使用GRID或MASONRY API来实现地铁布局并显示FIELDS。使用字段从发布的内容中提取所需内容。

答案 2 :(得分:0)

您可以使用特殊内容类型和视图来获取该类型的节点,就像其他人建议的那样。您也可以使用views_get_view_result()

https://api.drupal.org/api/views/views.module/function/views_get_view_result/7

只需获取节点数组并自行循环,而无需使用任何模板文件。通过这种方式,您可以完全使用HTML,只需从结果数组中打印出此函数返回的值。

但是,你可以完全不同的方式做到这一点。如果您要显示此信息,即您的主页,您可以将描述您的菜单的所有字段添加到家庭内容类型,您可以使用字段收集模块,它允许您重复字段组。因此,您可以创建一组描述单个菜单项的所有字段,并使其可重复。在您的主页模板文件中,您只需获取这些字段组/菜单项对象的数组。

https://www.drupal.org/project/field_collection