这是博客目前这套风格需要实现的功能,然而问题在于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);?>
就是如此便捷,可以说相当方便了。
转载注明来源。
本文来自投稿,不代表本站立场,如若转载,请注明出处:https://www.ruletree.club/archives/876/
求助大佬,出现错误:“
Undefined index: cid in var/Widget/Abstract/Contents.php on line 639
Undefined index: created in var/Widget/Abstract/Contents.php on line 653
.......”
@欧文斯
解决了,不能用 fetchAll,用 fetchRow 就可以了,谢谢大佬教程
@欧文斯
我这边仍然是正常的,可能是php兼容问题吧