2012-02-17 58 views
3

我创建一个Drupal的模板,并使用该Drupal的分离模板代码页眉和页脚包括

<?php require "".base_path() . path_to_theme()."'/header.php'" ?> 

,它确实提供了正确的道路试过,但它给了这个

警告:要求( /learn/learn_drupal/sites/all/themes/test_theme'/header.php'):无法打开流:require()中没有这样的文件或目录(/ Users/Devric/Sites/learn/learn_drupal/sites的第33行/all/themes/test_theme/templates/html.tpl.php)。

任何人都知道如何分离代码?

+0

灵活控制页脚和页眉模板的正确的drupal方式是什么? – devric 2012-02-17 12:11:50

回答

7

如果我是你,我会阅读如何设置适当的Drupal主题。

首先在您的主题目录中创建模板文件夹。然后从根modules/system/page.tpl.phpmodules/system/html.tpl.php复制到这个新的模板文件夹。

这是您的主要主题文件。 html.tpl.php包含标题中的所有内容(元标签等)以及开始和结束标签。

page.tpl.php是什么在身体之间,或基本上是什么打印它说<?php print $page; ?>

如果您打开page.tpl.php文件,您将看到所有区域等。这是您的页面大纲。使用这个来清理任何页脚,头文件等,使用硬编码或Drupal的优秀块系统。

如果你认为你的页面像这样的是应该有所帮助:

html.tpl.php -> opens your html page 
    - page.tpl.php -> any constant elements above the content 
     - node.tpl.php -> the content 
    - page.tpl.php -> any constant elements below the content 
html.tpl.php -> closes your html page 

你不需要建立自己的包括Drupal的,因为已经做这一切为您服务。这是一个陡峭的学习曲线,我真的很努力地开始,但没有意义的是不要做Drupal方式,因为你失去了使它成为如此好的CMS的原因。

你可以在这里阅读更多 - http://drupal.org/documentation/theme

编辑:

您可以设置块到具体页面,然后他们的主题。例如,设置一个名为about header的块,并设置为仅显示在块管理页面上您想要的页面上。您可以按照与节点相同的方式为每个块设置模板。

+0

hm我想做一些比这更灵活的事情,没有问题与page.tpl.php或页面 - whatever.tpl.php。原因是我可能希望有一些像页面一样的页面 - lab.tpl.php使用一个页脚设计,而page - about.tpl.php使用另一页。来自wordpress的方法就是使用包含这些通用块的不同页面设计。在drupal中实现这一点的好方法是什么? – devric 2012-02-17 12:38:20

+0

说实话页面 - whatever.tpl.php是好的,但我已经赞赏我的答案,包括一个快速运行在块做这个。 – SpaceBeers 2012-02-17 12:46:28

+0

可能我正在寻找的是页面特定的块吗?比我在这些块上使用自定义模板 – devric 2012-02-17 12:47:28