首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

自定义函数展示 Drupal 分类列表

2012-06-28 
自定义函数显示 Drupal 分类列表自定义函数显示 Drupal 分类列表其实CCK和View能实现的我们手动一样可以实

自定义函数显示 Drupal 分类列表
自定义函数显示 Drupal 分类列表

其实CCK和View能实现的我们手动一样可以实现,而且异常简单。

以国内网站最常见的显示某一分类最新文章列表为例:

在模板文件 template.php 中增加一个自定义函数如下:

?

function phptemplate_show_taxonomy($tid){//根据tid读取术语名称$sql ="SELECT name FROM {term_data} WHERE tid = %d";$result = db_query(db_rewrite_sql($sql),$tid);while($data = db_fetch_object($result)){$term_name = $data->name;}$output = "<div>";$output .= "<h2>".$term_name."</h2><ul>";$sql = "SELECT n.nid, n.title, n.createdFROM {term_node} tnLEFT JOIN {node} n on n.nid = tn.nidWHERE tn.tid = %dORDER BY n.created DESC";$result = db_query_range(db_rewrite_sql($sql),$tid,0,8);while($data = db_fetch_object($result)){$output .="<li>".l($data->title,"node/$data->nid")."</li>";}$output .= "</ul></div>";return $output;}在模板适当位置写入:<?php print phptemplate_show_taxonomy(12) ?>

function phptemplate_show_taxonomy($tid){

//根据tid读取术语名称

$sql ="SELECT name FROM {term_data} WHERE tid = %d";

$result = db_query(db_rewrite_sql($sql),$tid);

while($data = db_fetch_object($result)){

$term_name = $data->name;

}

$output = "<div>";

$output .= "<h2>".$term_name."</h2><ul>";

$sql = "SELECT n.nid, n.title, n.created

FROM {term_node} tn

LEFT JOIN {node} n on n.nid = tn.nid

WHERE tn.tid = %d

ORDER BY n.created DESC";

$result = db_query_range(db_rewrite_sql($sql),$tid,0,8);

while($data = db_fetch_object($result)){

$output .="<li>".l($data->title,"node/$data->nid")."</li>";

}

$output .= "</ul></div>";

return $output;

}

在模板适当位置写入:

<?php print phptemplate_show_taxonomy(12) ?>

?

PS:1年前做Drupal项目时写得备忘,今天被不小心翻出来了…
WordPress贴代码真麻烦,不过懒得修改了,过几天把自己的Blog软件完善下发布出来…

TrackBack: http://mimiz.cn/index.php/drupal/drupal-category-list/trackback/

热点排行