elefant/app-menubuilder

Elefant CMS 的菜单构建应用

安装: 18

依赖关系: 0

建议者: 0

安全: 0

星星: 4

关注者: 3

分支: 2

开放问题: 0

类型:elefant-app

dev-master 2013-05-01 22:56 UTC

This package is auto-updated.

Last update: 2024-08-25 07:02:49 UTC


README

基于使用 YAML 格式定义尽可能多的自定义菜单的 Elefant CMS 菜单构建器。

菜单构建器提供一组动态菜单对象,通过 WYSIWYG 编辑器的动态对象对话框将菜单嵌入到您的网站中。

菜单构建器作为 Elefant 内置单树导航应用的替代方案。编辑 YAML 文件可能不适合每个人,但增加的灵活性可能会对某些人有所帮助。

格式化

以下是一个示例菜单

# This file defines a menu structure in your website.
# For formatting info, visit:
# https://github.com/jbroadway/menubuilder

menu:
  - label: Home
    page: index
    class: menu-home
  - label: Blog
    link: /blog
    class: menu-blog
  - label: Services
    page: services
    menu:
      - label: Web Design
        page: web-design
      - label: Social Media
        page: social-media
      - label: Branding
        page: branding
  - label: Contact Us
    page: contact-us

每个菜单都从顶级 menu: 部分开始。

每个部分包含一个或多个具有以下属性的项

  • label - 在链接中显示的文本。
  • page - 网站中页面的 ID。
  • link - 替代指定内部页面的外部链接。
  • class - 分配给 HTML 标签中项目的 CSS 类。
  • menu - 子项列表。

label 和 page 或 link 中必选之一是必须的。其余的是可选的。

菜单文件以 .yml 文件的形式保存在 conf/menubuilder 文件夹中。

集成

您可以通过以下两种方式之一将菜单集成到您的网站上

  1. 在 WYSIWYG 编辑器的动态对象对话框中,您将看到许多新对象,如 Menu: BreadcrumbMenu: Contextual。这些将嵌入不同类型的菜单到您的页面中。

  2. 在您的布局模板中,您可以直接使用以下标签包含菜单

    {! menubuilder/menu/breadcrumb?menu=Main !}

    {! menubuilder/menu/contextual?menu=Main !}

    {! menubuilder/menu/dropmenu?menu=Main !}

    {! menubuilder/menu/single?menu=Main !}

    {! menubuilder/menu/sitemap?menu=Main !}