wordpress模板评论函数(一):get_comments()获取评论信息

wordpress提供了非常多的功能强大的函数,本站将介绍wordpress模板的评论函数——get_comments()函数。get_comments()函数可以获取整站的评论,在设置相关参数后,还可以获取指定文章,在wordpress主题开发中,通过get_comments()函数,可以返回评论的很多信息,如:评论ID,评论的文章ID,评论用户,评论邮箱,评论内容等。

get_comments()语法:

args = array(
‘author_email’=>”,
‘author__in’=>“,
‘author__not_in’=>“,
‘include_unapproved’=>”,
‘fields’=>”,
‘ID’=>“,
‘comment__in’=>”,
‘comment__not_in’=>”,
‘业力=>”,
‘数字’=>”,
‘偏移’=>”,
‘orderby’=>”,
‘order’=>’DESC’,
‘父母’=>”,
‘post_author__in’=>”,
‘post_author__not_in’=>”,
‘post_ID’=>”,//被忽略(改用post_id)
‘post_id’=> 0,
‘post__in’=>“,
‘post__not_in’=>“,
‘post_author’=>“,
‘post_name’=>”,
‘post_parent’=>”,
‘post_status’=>”,
‘post_type’=>”,
‘状态’=>’全部’,
‘类型’=>”,
‘type__in’=>“,
‘type__not_in’=>”,
‘user_id’=>”,
‘搜索’=>”,
‘count’=>否,
‘meta_key’=>”,
‘meta_value’=>”,
‘meta_query’=>”,
‘date_query’=> null,//参见WP_Date_Query
);
get_comments($ args);
get_comments()函数只有一个参数,这个参数是一个副本(如上)。下面是这个数组中的所有参数的详解:
$ author_email –(字符串)评论用户的邮件地址,默认为空。
$ author__in –(包含)包含指定用户ID的评论,默认为空。
$ author__not_in –(分配)排除指定用户ID的评论,替换为空。
$ comment__in –(分配)获取指定ID的评论,默认为空。
$ comment__not_in –(复制)排除指定的评论,替换为空。
$ count –(布尔型)返回评论的数量值,默认为false。
$ date_query –(分段)返回限制时间段的评论,或参考WP_Date_Query,交替为空。
$ fields –(字符串)返回评论的分割,仅限注释ID的“ ids”或空,交替为空。
$ ID –(整型)暂存使用?(官网注释当前未使用。),替换为空。
$ include_unapproved –(包含)包含重新审核的评论ID或邮箱地址,替换为空。
$ karma –(整型)用于检索注释注释的KARMA折叠,替换为空。
$ meta_key –(字符串)包含的评论自定义片段,替换为空。
$ meta_value –(字符串)包含的评论自定义长度值,必须和$ meta_key一起使用,要么为空。
$ meta_query –(数组)自定义细分查询条件,参考WP_Meta_Query函数,交替为空。
$ number –(整型)返回的评论条数,不设置则不限量数量,替换为空。
$ offset –(整型)从第几条开始的评论,替代为空。
$ orderby –(文字序列)返回的评论排序方式,
$ order –(字符串)排序顺序,可选ASC或DESC,可选DESC。
$ parent –(整型)指定ID的子评论,默认为空。
$ post_author__in –(分配)获取指定文章作者ID的评论,替换为空。
$ post_author__not_in –(副本)排除指定文章作者ID的评论,替换为空。
$ post_ID –(整型)(官网注释当前未使用),替换为空。
$ post_id –(整型)指定单篇文章ID,替代为空。
$ post__in –(分配)指定多篇文章ID的评论,替换为空。
$ post__not_in –(补充)排除指定文章ID的评论,替换为空。
$ post_author –(整型)指定文章作者ID的评论,替换为空。
$ post_status –(字符串)文章的状态,草稿,待审或者已发布,替换为空。
$ post_type –(字符串)文章类型,如post,page或自定义文章类型,变成为空。
$ post_name –(字符串)文章名称,替换为空。
$ post_parent –(整形)指定父ID的评论,默认为空。
$ search –(字符串)搜索匹配,默认为空。
$ status –(字符串)评论的状态,支持“保留”,“批准”,“全部”或自定义的评论状态,替换为全部。
$ type –(字符串格式)评论的类型,可选“ comment”,“ pings”(包含“ pingback”和“ trackback”),或自定义类型,交替为空。
$ type__in –(一系列)评论的类型,多个类型使用,替代为空。
$ type__not_in –(添加)要排除的评论类型,替换为空。
$ user_id –(整型)指定会员ID的评论。

get_comments()函数会返回分段评论信息,函数的返回值是数组,并包含以下片段:

comment_ID –评论ID
comment_post_ID –评论父ID
comment_author –评论用户名
comment_author_email –评论用户邮箱
comment_author_url –评论用户网址
comment_author_IP –评论用户IP
comment_date –评论时间,格式(YYYY-MM-DD HH:MM:SS)
comment_date_gmt –评论的GMT时间(YYYY-MM-DD HH:MM:SS)
comment_content –评论内容
comment_karma –评论的karma
comment_approved –评论状态(0,1或“垃圾邮件”)
comment_agent –评论用户的工具(浏览器,操作系统等信息)
comment_type –评论的类型(pingback或trackback),空的话表示常规评论
comment_parent –嵌套评论的父评论(0为标题)
user_id –用户ID(如果评论的用户是网站注册用户则返回)

如果是要自定义评论模板时,这个get_comments()函数会派上大大的用场,可以最大地实现评论列表的自由度。下面是一个获取指定用户的所有评论列表案例:

<h4>你的评论</ h4>
<ul>
<?php
$ args =数组(
‘user_id’=> $ users-> ID,//使用user_id
‘计数’=> true
);
$ counts = get_comments($ args); //获取评论数量
$ page_num2 = 1; //每页显示多少条
$ page_count2 = ceil($ counts / $ page_num2); //总页数
$ page_now2 = $ _GET [‘page_now2’]?:1; //当前页
$ start2 =($ page_now2-1)* $ page_num2; //开始
$ args =数组(
‘user_id’=> $ users-> ID,//指定用户的评论
);
$ comments = get_comments($ args);
for($ i = $ start2; $ i <($ start2 + $ page_num2); $ i ++){
?>
<li>
<div class =“ comments listing-reviews”>
<ul>
<li>
<div class =“ avatar”> <?php echo get_avatar($ users-> ID,40); //用户图像?> </ div>
<div class =“ comment-content”> <div class =“ arrow-comment”> </ div>
<div class =“ comment-by”>
<div class =“ comment-by-listing own-comment”>
你对<?php echo get_comment_author($ comments [$ i]-> comment_parent); ?>的评论
</ div>
<span class =“ date”> <?php echo $ comments [$ i]-> comment_date; ?> </ span>
<div class =“ star-rating” data-rating =“ 4.5”> </ div>
</ div>
<p> <?php echo $ comments [$ i]-> comment_content; ?> </ p>
<a href=”#small-dialog2″ class=”rate-review edit_cur_comment” id=”<?php echo $comments[$i]-> comment_ID;?>“> <i class =” sl sl-icon-note “> </ i>编辑</a>
</ div>
</ li>
</ ul>
</ div>
</ li>
<?php}?>
</ ul>
</ div>
<!-分页->
<div class =“ clearfix”> </ div>
<div class =“ pagination-container margin-top-30 margin-bottom-0”>
<nav class =“ pagination”>
<ul>
<?php
for($ i = 1; $ i <($ page_count2 + 1); $ i ++){
if($ i == $ page_now2){
回声'<li> <a href =“ javascript :;” class =“ current-page”>’。$ i。'</a> </ li>’;
}其他{
回声'<li> <a href=”‘.home_url().’/?author=’.$users-> ID。’&act = comment_list&page_now2 =’。$ i。’“>’。$ i。'</ </ a> </ li>’;
}
}
?>
</ ul>
</ nav>
</ div>

人已赞赏
WP实用教程

wordpress企业主题怎样通过get_post()函数调用指定page页面的信息?

2018-2-24 15:21:02

WP实用教程

wordpress主题开发函数(二):添加选项add_option()与修改选项update_option()

2018-2-24 15:22:15

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!

2. 分享目的仅供大家学习和交流,请不要用于商业用途!

3. 如果你也有好源码或者教程,可以到审核区发布,分享有金币奖励和额外收入!

4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!

5. 如有链接无法下载、失效或广告,请联系管理员处理!

6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!

7. 如遇到加密压缩包,默认解压密码为"www.zhidianju.com",如遇到无法解压的请联系管理员!

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索