【问题标题】:Theming Drupal book hierarchies主题化 Drupal 书籍层次结构
【发布时间】:2009-11-04 14:10:25
【问题描述】:

我正准备将我们的静态 HTML 网站转换为 Drupal。我们的网站目前分为多个部分,每个部分都有一个标题,然后是下面的子部分列表(例如,请参阅http://www.eurosafeuk.co.uk/services/)。

这与 Drupal 的“书”模块非常吻合,但我需要自定义子页面的显示;默认情况下,它们被打印为页面标题的无序列表,而我需要的是输出:

  • 每页的预告图片
  • 页面标题
  • 页面摘要

我查看了 .tpl 文件,发现子项存储在 $tree 变量中(已经是 HTML 格式)。我的问题是:如果我想修改它,我应该从哪里开始?有谁知道可以做到这一点的预先存在的模块,还是我需要深入研究代码?

【问题讨论】:

  • 无论您做什么,明智的做法是“像 Drupal 那样做”并覆盖或挂钩到现有模块,而不是自己更改模块,这会迫使您重新更改它的任何新版本。在大多数情况下,通过编写自己的模块来更改模块的现有行为比更改现有模块更容易、更安全。

标签: drupal


【解决方案1】:

您可能希望查看为您的案例制作的模块,而不是使用专门用于书籍结构的 Book 模块。我看起来不太好,但Node Hierarchy 模块可能对你有用。 .以下是其项目页面的摘录:

... 允许节点成为其他节点的子节点,从而创建树状的内容层次结构。该模块提供:

  • 一键创建分层菜单
  • 分层面包屑
  • 使用 Pathauto(和令牌模块)的自动分层 URL (例如:q=aboutus/history/beginning)。
  • 如果需要,自动创建分层菜单。
  • 可选的视图集成。
  • 可选的节点访问集成。

如果您想以不同方式对特定部分中的节点进行主题化,最好为每个部分制作单独的 .tpl 文件。您命名这些 .tpl 文件的方式使它们适用到某个部分的节点。

【讨论】:

  • 宾果游戏!谢谢,这正是我想要的。
  • 我一直想看看drupal.org/project/menu_block,它看起来是同类想法的一种更轻量级的方法。
【解决方案2】:

获取devel 模块,并开启主题开发者。这将告诉您用于构建 HTML 的模板或函数,以及您可以创建哪些模板来覆盖它。

【讨论】:

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