You are here

理解drupal模板文件

g089h515r806 的头像
Submitted by g089h515r806 on 星期四, 2009-08-13 11:24

老葛的Drupal培训班 Think in Drupal

一些主题包含各种模板文件,而有些仅包含page.tpl.php。那么你如何知道,你可以创建哪些Drupal能够识别的模板文件呢?创建模板文件时,所遵循的命名约定有哪些?在接下来的部分中,我将向你讲解使用模板文件的各种技能。
 
大图
    page.tpl.php是所有其它模板文件的祖宗,它负责站点的整体布局。其它模板文件被插入到了page.tpl.php中,如图8-4所说明的。
8-4其它的模板被插入到了page.tpl.php文件中
 
    在页面的构建期间,图8-4中block.tpl.php和node.tpl.php的插入是由主题系统自动完成的。还记不记得,你在前面的例子中创建的page.tpl.php文件?好的,变量$content包含了调用node.tpl.ph的输出,而$left包含了调用block.tpl.php的输出。让我们看看它是怎么工作的。
    让我们向Greyscale主题中添加一个节点模板文件。我们在这里没有从头创建一个,而是拷贝Drupal的默认节点模板文件;也就是,如果一个主题中找不到node.tpl.php文件的话,所使用的节点模板文件。将modules/node/node.tpl.php拷贝到sites/all/themes/custom/greyscale/node.tpl.php。然后访问“管理➤站点构建 ➤模块”页面,这样就会重新构建主题注册表。在重新构建的过程中,Drupal将找到sites/all/themes/custom/greyscale/node.tpl.php文件,并且从现在起,它将使用这个文件作为节点模板。导航到“创建内容➤Page”,来创建一个节点(只输入标题和主体字段就可以了)。现在你可以对你的node.tpl.php文件做一点小的修改(比如在它的最后面加上“你好吗!”)。现在你节点的显示,就使用了你修改的模板文件。
    对于block.tpl.php,方法是一样的(你可以在modules/system/block.tpl.php找到默认的区块模板文件),对于Drupal中的其它模板,也同样适用。
 

Drupal版本: