Typecho如何获取某一篇文章或者页面的所有评论

发布于 2022-09-05 02:47:25 字数 2213 浏览 33 评论 0

<?php

//start page comments
    $slug = "message"; //页面缩略名
    $limit = 10;  //调用数量
    $length = 30;  //截取长度
    $ispage = true;  //true 输出slug页面评论,false输出其它所有评论
    $isGuestbook = $ispage ? " = " : " <> ";

    $db = $this->db;//Typecho_Db::get();
    $options = $this->options;//Typecho_Widget::widget('Widget_Options');
        
    $page = $db->fetchRow($db->select()->from('table.contents')
        ->where('table.contents.status = ?', 'publish')
        ->where('table.contents.created < ?', $options->gmtTime)
        ->where('table.contents.slug = ?', $slug));
        
    if( $page ){
    
        $type = $page['type'];
        $routeExists = (NULL != Typecho_Router::get($type));
        $page['pathinfo'] = $routeExists ? Typecho_Router::url($type, $page) : '#';
        $page['permalink'] = Typecho_Common::url($page['pathinfo'], $options->index);
            
        $comments = $db->fetchAll($db->select()->from('table.comments')
        ->where('table.comments.status = ?', 'approved')
        ->where('table.comments.created < ?', $options->gmtTime)
        ->where('table.comments.type = ?', 'comment')
        ->where('table.comments.cid '.$isGuestbook.' ?', $page['cid'])
        ->order('table.comments.created', Typecho_Db::SORT_DESC)
        ->limit($limit)  );
    
        foreach($comments AS $comment) {
            echo '<li>';
            echo '<a href="'. $page['permalink']."#comment-".$comment['coid'] .'" title="'.$comment['text'].'">';
            echo Typecho_Common::subStr(strip_tags($comment['text']), 0, $length, '...').'</a>';
            echo '</li>';
        }    
    
    }else{
        echo "<li>No Comments</li>";        
    }
//end page comments

?>
可以将此代码保存为 commlist.php 文件,放在 /usr/themes/ 目录下,在需要调用的主题模板中,输入以下代码

<ul>

<!--?php include_once "../commlist.php"; ?-->

</ul>

用阿松写的这段代码,修改
$slug = "message"; //页面缩略名
改成
$slug = $this->slug; //页面缩略名

首页文章不用点击进去,也可以单独调用评论列表,但怎么显示评论时间呢?
请高手指点
Typecho如何获取某一篇文章或者页面的所有评论

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

被翻牌 2022-09-12 02:47:25

评论时间就是$comment['created_at'],这是unix时间戳,转换成人类看得懂的时间date('Y-m-d H:i:s', $comment['created_at'])

×眷恋的温暖 2022-09-12 02:47:25

可以了,但时间少了8小时,日期和分钟以及秒是对的,醉了,帮忙再看看

已解决,+28880

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文