7.1 善用template.php

g089h515r806 的头像
Submitted by g089h515r806 on 星期二, 2008-10-21 08:49

这个文件很有用,但是很多人,特别是初学的,连这个函数是干什么的都不知道,所以我在上文中让大家好好的看看这个函数。

这里可以干什么?可以覆写各种各样的主题函数,可以为page,node,comment,等模板文件中添加自定义的变量,还可以在这里添加模板建议(template suggestion),另外,这里面的函数你可以在页面模板文件中,直接调用。在前文中,我们就是这样用的。

对于许多小的drupal站点,如果觉得编写drupal模块真的比较麻烦的话,就可以使用这种方式,想一想吧,template.php中你可以放置任意的php函数,还有什么功能,不能直接实现呢?php能够实现的,drupal也大都可以实现。当然对于比较大的站点,用到这个文件的地方也不少。所以认真地读读garland的template.php,对于以后的开发工作是很有帮助的。

强调完这一点,接下来让我们看看front模块的使用。

Drupal版本:

7.0在template.php文件中添加自定义函数

g089h515r806 的头像
Submitted by g089h515r806 on 星期二, 2008-10-21 08:15

没想到CCK的写了好几篇,怎么写都写不完,还好终于勉强的搞定了.现在让我们接着第5篇继续往下写.我们现在要采取的方式就是使用一段代码,将这些东西输出了.

我们写一个函数,用来读取分类以及它下面的内容,然后直接在页面文章中调用这个函数,这是一个很高效的方法,稍微会点php的都会这样干,我见过不少以前搞php的人,开始使用drupal时,都是直接使用裸php函数,无论是节点中,区块中,还是任何可以使用php code输入格式的地方,他们都会使用php。不过在drupal6.x中,我们这里6.5,php代码这种输入格式被取消了,大量的在内容中使用php代码,在drupal圈内是个被严重鄙视的方式。

如何将drupal节点置顶

g089h515r806 的头像
Submitted by g089h515r806 on 星期二, 2008-10-21 01:53

无论是官方drupal.org,还是drupal china上,都有一篇文章置于最顶部,也就是最显眼的地方,由于我要搞drupal培训,发了篇培训信息,现在想把它置顶。现在看看怎么做?

找到“Zhupou.cn本周六,周日推出drupal培训课程”这篇文章,进入它的编辑页面,在“publishing options”(发布选项)中选中“Sticky at top of lists”(置顶)。Ok,这样就搞定了。

以前在学习节点的时候,知道有个Sticky变量,而在drupal内部也有相应的字段,当时把它翻译为“粘的”,纯粹是按照字面意思翻译的,现在终于明白,这个是用来置顶的。汉语中也有对应的词汇“置顶”。

Drupal版本:

Views2模块入门教程

g089h515r806 的头像
Submitted by g089h515r806 on 星期二, 2008-10-21 01:00

 Views2终于发布了2.0正式版,相关的新闻我已经介绍了,不过在接下来的日子里,我将讲解Views2的用法,包括创建区块,创建页面,领着你学会views的各种常用用法.同时也作为培训教程中的一部分,对外提供培训.如果周6的培训课程主题部分讲完了,专门留出来时间给大家讲讲views2.0.这个可是针对drupal6.5的。

       你可以选择阅读本文,来自学drupal,也可以选择学习本文加上我的当面指导,这样效果会更佳。金钱可以帮你节省一些时间的。

    Views2模块入门教程将会陆续推出。敬请光顾。

Drupal版本:

6.6 drupal CCK总结

g089h515r806 的头像
Submitted by g089h515r806 on 星期二, 2008-10-21 00:43

使用CCK创建一个front page节点类型,然后再创建一个首页节点.这种方式有啥好处呢?那就是将来你编辑首页时,首页的各个部分现在都成了一个字段,相互之间互不干扰.或许 这是唯一的好处了,但是,使用这种方式创建的首页,仍然是静态的,而且与纯HTML的首页相比,没有任何明显的优势,而且我们也看到了为CCK节点类型定制节点模板也相当的费时费力.

 

Drupal版本:

6.5 改造CCK节点模板node-front_page.tpl.php

g089h515r806 的头像
Submitted by g089h515r806 on 星期一, 2008-10-20 14:21

我们在前面提到,在节点模板中,模板使用$content变量将正文,以及由CCK创建的字段一股脑的输了出来,怎么才能将其单独的输出来,放到定制的html中呢?

       在文章的最后面,我们提到了print_r()这个函数的应用,这个函数在制作模板文件中,用处可大了,又专门的支持主题制作的drupal模块,不过我没有用过,我觉得print_r已经够用了。让我们在节点模板中,插入<?php print_r($node) ?>,访问首页,发现里面的内容全乱套了。

Drupal版本:

6.4 Node-front_page.tpl.php

g089h515r806 的头像
Submitted by g089h515r806 on 星期一, 2008-10-20 13:17

     你可以为特定节点类型的节点单独的创建一个节点模板文件,对于我们的首页节点类型,如果要单独的定制它的外观的话,就需要创建一个node-front_page.tpl.php.创建的过程就是拷贝node.tpl.php,然后将其重命名。

      我们先来看看这个garland的node.tpl.php,也就是还没有被修改的node-front_page.tpl.php。注意不要把node-front_page.tpl.php写成了“node-front-page.tpl.php”,因为我在写本文的时候就犯了这个错误,有时候,这样的一个很小的错误就会浪费你半天时间。我遇到过这样的情况。换成了后者,就不管用,因为系统内部没有front-page这种节点类型,只有front_page。

 

Drupal版本:

6.3分析一下drupal的garland主题

g089h515r806 的头像
Submitted by g089h515r806 on 星期一, 2008-10-20 12:47

      直接就在garland目录下面修改了.拷贝themes/garland下面的page.tpl.php,并将复制品重命名为page-front.tpl.php,现在后者就负责首页的外观了,但是现在我们还没有在里面做任何修改。打开page-front.tpl.php,

garland的页面模板虽然丑陋,但是却相当经典。以前我做页面模板时,就是仿照这个,通常header部分都是直接拷贝这里的。

<?php

// $Id: page.tpl.php,v 1.18 2008/01/24 goba Exp $

Drupal版本:

页面

Subscribe to Think in Drupal RSS