在一些 Typecho 网站的评论区里面,别人评论时会带上一个可爱的@小尾巴,怎么给自己的主题加上这个呢?这一次的 Typecho 教程就和大家分享一下。
- 原文来源:详情
在 function 里面加上这个
//获取评论的锚点链接function get_comment_at($coid){ $db = Typecho_Db::get(); $prow = $db->fetchRow($db->select('parent,status')->from('table.comments') ->where('coid = ?', $coid));//当前评论 $mail = ""; $parent = @$prow['parent']; if ($parent != "0") {//子评论 $arow = $db->fetchRow($db->select('author,status,mail')->from('table.comments') ->where('coid = ?', $parent));//查询该条评论的父评论的信息 @$author = @$arow['author'];//作者名称 $mail = @$arow['mail']; if(@$author && $arow['status'] == "approved"){//父评论作者存在且父评论已经审核通过 if (@$prow['status'] == "waiting"){ echo '<p class="commentReview">(评论审核中))</p>'; } echo '<a href="#comment-' . $parent . '">@' . $author . '</a>'; }else{//父评论作者不存在或者父评论没有审核通过 if (@$prow['status'] == "waiting"){ echo '<p class="commentReview">(评论审核中))</p>'; }else{ echo ''; } }
} else {//母评论,无需输出锚点链接 if (@$prow['status'] == "waiting"){ echo '<p class="commentReview">(评论审核中))</p>'; }else{ echo ''; } }}调用方法:在评论输出内容的地方前面放上就行了
<?php $parentMail = get_comment_at($comments->coid)?><?php echo $parentMail;?>