1//start page comments 2$slug = "message"; //页面缩略名 3$limit = 10; //调用数量 4$length = 30; //截取长度 5$ispage = true; //true 输出slug页面评论,false输出其它所有评论 6$isGuestbook = $ispage ? " = " : " <> "; 7 8$db = $this->db;//Typecho_Db::get(); 9$options = $this->options;//Typecho_Widget::widget('Widget_Options'); 10 11$page = $db->fetchRow($db->select()->from('table.contents') 12 ->where('table.contents.status = ?', 'publish') 13 ->where('table.contents.created < ?', $options->gmtTime) 14 ->where('table.contents.slug = ?', $slug)); 15 16if( $page ){ 17 18 $type = $page['type']; 19 $routeExists = (NULL != Typecho_Router::get($type)); 20 $page['pathinfo'] = $routeExists ? Typecho_Router::url($type, $page) : '#'; 21 $page['permalink'] = Typecho_Common::url($page['pathinfo'], $options->index); 22 23 $comments = $db->fetchAll($db->select()->from('table.comments') 24 ->where('table.comments.status = ?', 'approved') 25 ->where('table.comments.created < ?', $options->gmtTime) 26 ->where('table.comments.type = ?', 'comment') 27 ->where('table.comments.cid '.$isGuestbook.' ?', $page['cid']) 28 ->order('table.comments.created', Typecho_Db::SORT_DESC) 29 ->limit($limit) ); 30 31 foreach($comments AS $comment) { 32 echo '<li>'; 33 echo '<a href="'. $page['permalink']."#comment-".$comment['coid'] .'" title="'.$comment['text'].'">'; 34 echo Typecho_Common::subStr(strip_tags($comment['text']), 0, $length, '...').'</a>'; 35 echo '</li>'; 36 } 37 38}else{ 39 echo "<li>No Comments</li>"; 40} 41//end page comments 可以将此代码保存为 commlist.php 文件,放在 /usr/themes/ 目录下,在需要调用的主题模板中,输入以下代码
...