You are here

按区域或者模块,对drupal区块进行主题化

g089h515r806 的头像
Submitted by g089h515r806 on 星期一, 2008-09-08 08:00

在Drupal5.0中,设计者可以基于特定的区块、区块所属的模块、以及区块所在的区域,为区块创建多个tpl.php文件。

 

drupal模板文件的查找顺序如下:

  • block-[module]-[delta].tpl.php
  • block-[module].tpl.php
  • block-[region].tpl.php
  • block.tpl.php

 

例如,用户登录区块的delta为0。假如你将它放在了左栏中,当它显示时,PHPTemplate将按照下面的顺序寻找模板文件:

  • block-user-0.tpl.php
  • block-user.tpl.php
  • block-left.tpl.php
  • block.tpl.php

 

通过查看页面的源文件,你可以找到区块所属的模块以及delta:每个区块的主DIV都使用了下面的类和ID:

<div class="block block-{module}" id="block-{module}-{delta}"> 

 

 

使用CSS自定义样式

你也可以使用这些类和IDs为区块添加CSS规则,可用于所有的区块,特定模块的区块,或者单个区块。(为了通过区域来自定义区块的样式,你需要在选择器中使用整个区域DIV的类或者ID)。

注意,delta一般是一个数字:模块中区块的排序,从0开始。在一些情况下,delta也可以是一个名字:为了给Views模块创建的区块定义外观,你可以使用block-views-[name of your block].tpl.php。

 相关链接:http://drupal.org/node/104319 , Think in Drupal

 

Drupal版本: