WordPress创建显示所有评论的页面
应网友hongwang777的请求,他需要一个显示他的WordPress博客所有文章评论的页面,同时又想按照月…
应网友hongwang777的请求,他需要一个显示他的WordPress博客所有文章评论的页面,同时又想按照月份来显示。我翻阅了一下WordPress的文档,发现函数 get_comments()恰好可以解决这个问题,下面具体实现方法。
实现方法:
1、在当前主题目录下新建一个php文件,命名为commets-page.php,然后将page.php中的所有代码复制到commets-page.php中
2、删除commets-page.php开头的所有注释,即 /* 与 */ ,以及它们之间的所有内容
3、将第一个 <?php 改成
<?php
/*
Template Name: All comments
*/
4、将 the_content(); 改成以下代码:
/**
* 名称: WordPress创建显示所有评论的页面
* 作者:露兜
* 博客:https://www.ludou.org/
* 最后修改:2010年08月24日
*/
$comments = get_comments('$status=approve');
$start = '2010-05'; // 起始月份
$month = '2010-01';
foreach($comments as $comm)
{
$comments_month = date('Y-m', strtotime($comm->comment_date));
if ($comments_month < $start)
break;
if ($comments_month != $month)
echo '<strong>' . $comments_month . '</strong><br />';
echo '<a href="'. $comm->comment_author_url .'" rel="nofollow">' . $comm->comment_author . '</a>: ' . $comm->comment_content . ' (' . $comm->comment_date . ') <br />';
$month = date('Y-m', strtotime($comm->comment_date));
}
5、可能你的博客有上万条评论,但是全部显示可能比较麻烦,你可以将以上代码中的 $start = '2010-05'; // 起始月份
,2010-05改成起始月份,则只显示2010-05之后发表的评论;如果你不想访客在这个页面中发布评论,可以将commets-page.php中类似代码 comments_template(.....);
删除, ….. 代表未知字符
6、进入WordPress管理后台 – 页面 – 创建页面,标题为所有评论(可以自己起名),内容不要填,右侧可以选择模板,选择 All comments 即可
7、评论列表页创建成功!
— 完 —
类别:WordPress开发、
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
评论功能已经关闭!