这是博客目前这套风格需要实现的功能,然而问题在于typecho标准的写法似乎并没有能调用评论所属文章和链接的标签(可能是我没发现),所以决定还是通过在function.php中定义方法来实现。总得来说,还算简单,因为本身可以调用所属文章的ID,那么久可以通过这个ID查询文章的信息了
function.php中代码如下:
- function GetIdPosts($id){
- if($id){
- $getid = explode(',',$id);
- $db = Typecho_Db::get();
- $result = $db->fetchAll($db->select()->from('table.contents')
- ->where('status = ?','publish')
- ->where('type = ?', 'post')
- ->where('cid in ?',$getid)
- ->order('cid', Typecho_Db::SORT_DESC)
- );
- if($result){
- $i=1;
- foreach($result as $val){
- $val = Typecho_Widget::widget('Widget_Abstract_Contents')->push($val);
- $post_title = htmlspecialchars($val['title']);
- $permalink = $val['permalink'];
- echo '<p><a href="'.$permalink.'" title="评论在:'.$post_title.'" style="color: #bbb;" target="_blank">评论在:'.$post_title.'</a></p>';
- }
- }
- }else{
- echo '请设置要调用的文章ID';
- }
- }
复制代码
看起来就是传入文章ID参数,在数据库中查询文章的信息,然后循环输出。
而在前端模板中调用的代码如下:
- <?php GetIdPosts($comments->cid);?>
复制代码 |