【问题标题】:How to make a custom menu in Drupal 7如何在 Drupal 7 中制作自定义菜单
【发布时间】:2015-07-30 18:50:41
【问题描述】:

我是 Drupal 的新手,我想在我的 Drupal 7 安装中创建一组 Metro 风格的 Web 应用快捷方式。

我想让它动态化,这样任何有权限的用户都可以在 Drupal 中编辑它们。

据我所知,我需要以下字段:

Icon URL / Icon Image
Title
Body
Color
URL

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

非常感谢。

【问题讨论】:

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


    【解决方案1】:

    我会使用节点和视图来实现这一点。我不认为你需要一个 tpl,我认为一些 css 就可以了。

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

    对于第一个全局自定义文本

    1. 移除标签
    2. 转到样式手风琴并将自定义字段 HTML 设置为无
    3. 转到样式手风琴并将自定义字段和标签包装器HTML设置为无
    4. 将文本设置为

    <div class="[color_field]"><a href="[url_field]">

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

    1. 移除标签
    2. 转到样式手风琴并将自定义字段 HTML 设置为无
    3. 转到样式手风琴并将自定义字段和标签包装器HTML设置为无
    4. 将文本设置为

    </a></div>

    全局自定义文本字段将为您的颜色和链接在视图行中的所有字段创建一个包装器。查看您的 Replacement Patterns 手风琴以获取视图中字段的名称,我在上面使用 color_field 和 url_field 作为占位符

    【讨论】:

    • 有些词我听不懂,比如 Global。我已经能够通过一些测试使用 Views 来做到这一点,现在我看到了所有字段并删除了字段的所有标签并添加了 css 类。现在我要修改主题的css。我不知道该怎么做的一件事是使用 CSS 中的“颜色”字段,也许我必须使用 JS 才能工作
    • 我正在更好地阅读您的答案,看看我是否可以让颜色的事情发生
    • 什么是全局自定义文本以及如何进行替换?
    • 哦,我现在明白了,自定义文本是在视图中添加字段时的一种类型。我之前很困惑。如果可以的话,我会多次投票给你。谢谢!
    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

      您可以按照其他人的建议使用特殊的内容类型和视图来获取该类型的节点。你也可以使用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

      【讨论】:

        猜你喜欢
        • 2011-06-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多