在下 看過之前drupaler寫下 如何如何 Customising node ,比如Customising 的node類型为blog ,那麽只要添加一個node-blog.tpl.php 在主題底下便可,在下想Customising blog下的comments 不知道是否類似Customising node一樣,添加一個comment-blog.tpl.php 在主题底下便可??情指教,不勝感激。tks
您在這裡
使用者登入
最新文章
回應
3 年 5 個月 之前
6 年 5 個月 之前
6 年 6 個月 之前
6 年 6 個月 之前
6 年 6 個月 之前
6 年 6 個月 之前
6 年 6 個月 之前
6 年 6 個月 之前
6 年 6 個月 之前
6 年 6 個月 之前
Re: 關于Customising comments
comment 自己有一個template 的
comment.tpl.php
Joetsui's blog
Re: 關于Customising comments
如果我只想改變blog類型下的comment的風格呢?如何實現?
##########
http://www.micfeng.com
新聞大聯播
#########
Re: 關于Customising comments
comment.tpl.php 內無content type 的資料
你可以自己用sql 找出來(慢, 但簡單)
或template.tpl.php 用php_template_comment_wrapper
$node_type='blog' 改template file name
Joetsui's blog
Re: 關于Customising comments
這樣該 治標不治本,如果我又想forum的comment主題類型類型再發生改變呢? 又要該一次?
我希望的做法是,通過不同類型的tpl 來對應不同的主題,這樣類型。請指教~
##########
http://www.micfeng.com
新聞大聯播
#########
Re: 關于Customising comments
你要做的改變,需要更改template file嗎?或是只需動用CSS即可?
Re: 關于Customising comments
请允许我 引用
function phptemplate_node($node, $teaser = 0, $page = 0) {
// 此处省略若干行……,注意下面的黑体部分
return _phptemplate_callback('node', $variables, 'node-' . $node->type);
}
再看同一文件中的phptemplate_comment函数(负责处理Comment页面模板文件的):
function phptemplate_comment($comment, $links = 0) {
return _phptemplate_callback('comment', array(
'author' => theme('username', $comment),
'comment' => $comment,
'content' => $comment->comment,
'date' => format_date($comment->timestamp),
'links' => isset($links) ? theme('links', $links) : '',
'new' => $comment->new ? t('new') : '',
'picture' => theme_get_setting('toggle_comment_user_picture') ? theme('user_picture', $comment) : '',
'submitted' => t('Submitted by %a on %b.',
array('%a' => theme('username', $comment),
'%b' => format_date($comment->timestamp))),
'title' => l($comment->subject, $_GET['q'], NULL, NULL, "comment-$comment->cid")
));
}
对比发现处理comment时return _phptemplate_callback的时候少了处理页面时所加的关于node类型的参数,其实只要加上黑体部分就支持在各模板中实现灵活的comment页面定义了——因为我们修改的是模板引擎。
例如可修改为:
function phptemplate_comment($comment, $links = 0) {
return _phptemplate_callback('comment', array(
'author' => theme('username', $comment),
'comment' => $comment,
'content' => $comment->comment,
'date' => format_date($comment->timestamp),
'links' => isset($links) ? theme('links', $links) : '',
'new' => $comment->new ? t('new') : '',
'picture' => theme_get_setting('toggle_comment_user_picture') ? theme('user_picture', $comment) : '',
'submitted' => t('Submitted by %a on %b.',
array('%a' => theme('username', $comment),
'%b' => format_date($comment->timestamp))),
'title' => l($comment->subject, $_GET['q'], NULL, NULL, "comment-$comment->cid")
), 'comment-' . $comment->node_type);
問題 是 如何通過 $comment來獲取node_type(node_type 不在$comment 的選項範圍)
}
##########
http://www.micfeng.com
新聞大聯播
#########