为特定的flexinode类型创建一个drupal主题

g089h515r806 的头像
Submitted by g089h515r806 on 星期三, 2008-09-10 00:33

对于由flexinode创建的节点类型,你给节点类型的命名(也就是展示的节点类型名)与系统内部使用的节点类型名不一样.在系统内部使用的节点类型名为"flexinode-1", "flexinode-2",等等.查看节点类型名的一种方式是,直接查看数据库表“node”的name列。

例如,如果你使用flexinode创建了一个名为"info"的节点类型,如果你查看数据库的话,你就会发现其内部名称为"flexinode-1"。所以,你为"info"创建的模板文件应该命名为"node-flexinode-1.tpl.php"。

 

Drupal版本:

根据drupal节点类型对节点进行主题化

g089h515r806 的头像
Submitted by g089h515r806 on 星期二, 2008-09-09 13:42

模板文件node.tpl.php适用于所有类型的节点的主题化.这个文件覆盖了所有的节点类型,你可以按照手册的node.tpl.php页面的说明,对这个文件进行修改.为了对单独的节点类型分别进行主题化,你需要在你的主题文件夹下面创建一个node-$type.tpl.php文件,其中$type是节点类型的名称,从而为每种类型按照需要自定义主题.一些例子:

 

drupal CCK节点类型的主题定制

g089h515r806 的头像
Submitted by g089h515r806 on 星期二, 2008-09-09 01:47

       本文是基于我的实践经验所写,我的客户向我提出了一个要求,如何让CCK定义的节点类型拥有一个他想要的主题外观。当然,有多种方式可以实现这一点:1)仅用CSS(并不是所有情况下都有效);2)使用Contemplate模块,(是不是的会让我挠头);3)一个自定义模块(根据他的情况,也不是一个好办法);4)主题模板。

     随着他的需求的日益明确,我觉得主题模板模板应该是最好的办法。当然,这也是能够传授给他的最简单的方法。

具体要求和环境

       新的节点类型已经用CCK定义好了,当然它还可以更精简一些。节点类型的名字是“agency”。

       这个Drupal站点使用的主题为Garland。

Drupal版本:

为特定节点使用单独的drupal主题模板

g089h515r806 的头像
Submitted by g089h515r806 on 星期二, 2008-09-09 00:23

如果你想为一个drupal节点使用一个特定的node.tpl.php模板文件的话,你可以将下面的代码拷贝或者合并到你的template.php中:

<?php
function _phptemplate_variables($hook, $vars = array()) {
  switch ($hook) {
    case 'node':
      $vars['template_files'] = array('node-'. $vars['nid']);
      break;
  }
  return $vars;
}
?>

现在,比如对于节点34,你就可以专门为它创建一个主题,名为node-34.tpl.php的模板文件.

Drupal版本:

drupal首页判断,用$page==0 还是 $is_front?

g089h515r806 的头像
Submitted by g089h515r806 on 星期二, 2008-09-09 00:14

如果你打算使用$is_front来检查当前页面是不是展示的单个节点的话,这里有篇好的帖子(尤其是帖子下面的评论更值得一读),讨论了变量$page和$is_front的不同.

 

只有当你处在drupal站点的首页时,变量$is_front才被设置,也就是为真,而当你处在其它页面时,$is_front为假。对于普通的节点列表页面,比如当你点击一个drupal分类术语后所得到的节点列表页面,在这里$is_front就为假(false)。

 

drupal Comment.tpl.php

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

定义一个评论区块所输出的HTML.没有对评论进行任何逻辑处理,仅仅用于输出实际的评论.

 

可用变量

$author

链接到作者的个人信息页面.

$comment (object)

评论对象,将传递给theme_comment函数.

$content

链接的内容.

$date

格式化的发布日期.

页面

Subscribe to Think in Drupal RSS