zishu's blog

zishu's blog

一个热爱生活的博主。https://zishu.me

typecho 评论回复艾特评论人

在评论时,默认情况下,typecho 没有提供@评论人的功能,可以通过添加一些代码来实现。

functions.php中:

/*
* 评论回复时 @ 评论人
*/
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 '';
        }
    }
}

然後在comments.php中,在输出评论内容的代码之前添加:

<?php $parentMail = get_comment_at($comments->coid)?><?php echo $parentMail;?>

▼代码所示
1654569311759.png

▼效果圖
1654569512094.png


我的博客即將同步至腾讯云 + 社區,邀請大家一同入駐:https://cloud.tencent.com/developer/support-plan?invite_code=17ctk6evsjk5b

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。