Drupal 7模板建议 - 根据内容类型使用子目录?

时间:2015-01-16 17:12:42

标签: drupal-7 drupal-templates

我想像这样组织我的Drupal主题:

[themeDir]/templates/[contentType]/node.tpl.php
[themeDir]/templates/[contentType]/page.tpl.php
[themeDir]/templates/[contentType]/html.tpl.php

您会注意到模板文件使用默认名称,而不是以内容类型名称开头。这样我就可以将一个文件夹放入我的主题中,其中包含一组我想用于该内容类型的模板。

我已尝试在各种template.php流程函数中添加模板建议的大部分方法,但似乎无法找到正确的方法来执行此操作。甚至可以做到吗?

我喜欢一些反馈。如果可以像这样开发Drupal 7主题,那将是多么光滑?它甚至可能吗?

提前致谢。干杯!

1 个答案:

答案 0 :(得分:0)

您是否了解Drupal的模板命名约定?您还可以在模板目录中构建模板。 node.tpl.php是节点的默认值。当您拥有包含模板的内容类型时,您必须为其命名node--{type}.tpl.php以便Drupal将其选中。最好将模板目录与子目录结构化,但这是可选的。只要它们位于模板目录中,Drupal就会搜索命名约定。

现在,对于默认html.tpl.phppage.tpl.phpnode.tpl.php等等),它们被视为主模板< / em>,您可以将它们放在子目录系统默认中,但这也是可选的。 然后对于内容类型ex:文章,建议使用子目录文章&amp;遵循您的节点的名称约定,它将为您提供article/node--article.tpl.php。还经常使用视图区域等更多子目录。

有关模板命名约定的更多见解,请访问Drupal.org的Drupal 7 Template Suggestions