NIUBI
wordpress教程

WordPress 函数 wp_new_comment 添加新评论

8个月前/ 65/ / WP爱好者/ 已收录/
导语: 给 WordPress 添加评论的函数有好几个,方式也多种多样,虽然方法多,但每个方法的功能却不完全一样,比如使用 WordPress 函数 wp_new_comment 添加新评论,就会检查是否有重复评论,避免出现可以刷评论的 bug。

给 WordPress 添加评论的函数有好几个,方式也多种多样,虽然方法多,但每个方法的功能却不完全一样,比如使用 WordPress 函数 wp_new_comment 添加新评论,就会检查是否有重复评论,避免出现可以刷评论的 bug。

函数描述

添加一条新评论到数据库中(重点在新字上)。这个函数会通过过滤器和钩子判断评论数据是否被允许添加到 WordPress 数据库中,而 wp_insert_comment 函数则不会检查,直接添加到数据库。

函数原型

wp_new_comment 函数位于 wp-includes/comment.php 文件中,由于源码过长,这里 j 就不贴源代码了,大家可以到 WordPress 官方在线查看源码,地址:https://developer.wordpress.org/reference/functions/wp_new_comment/

参数说明

wp_new_comment 函数参数与 wp_insert_comment 函数参数差不多,只是多了一个是否返回 wp_error 错误对象的参数而已。

wp_new_comment( array $commentdata, bool $avoid_die = false )

$commentdata

(array) 评论数组。

  • ‘comment_agent’
    (string) 用户评论时的代理标识,默认空。
  • ‘comment_approved’
    (int|string) 是否有评论已经得到了批准,默认 1。
  • ‘comment_author’
    (string) 评论者的名字,默认为空。
  • ‘comment_author_email’
    (string) 评论者的邮箱地址,默认为空。
  • ‘comment_author_IP’
    (string) 评论者的 ip,默认为空。
  • ‘comment_author_url’
    (string) 评论者的 url 地址,默认为空。
  • ‘comment_content’
    (string) 评论内容。
  • ‘comment_date’
    (string) 评论提交的日期,手动指定时必须指定日期时区comment_date_gmt 参数,默认当前日期。
  • ‘comment_date_gmt’
    (string) 评论提交时的时区,默认是站点所选时区。
  • ‘comment_karma’
    (int) The karma of the comment. Default 0.这玩意儿看不懂是什么,默认 0
  • ‘comment_parent’
    (int) 评论所属父评论 id,如果有的话(就是楼主评论 id)
  • ‘comment_post_ID’
    (int) 涉及到的评论文章 id,默认 0。
  • ‘comment_type’
    (string) 评论类型,默认空。
  • ‘comment_meta’
    (array) 键/值对数组存储在 commentmeta 新评论。
  • ‘user_id’
    (int)评论用户的 id,默认 0。

$avoid_die

(bool)是否返回 wp_error 错误对象,默认 false,不返回直接输出错误。

简单使用

$commentdata = compact('comment_post_ID', 'comment_author', 'comment_author_email', 'comment_author_url', 'comment_content', 'comment_type', 'comment_parent', 'user_ID');  $comment_id = wp_new_comment( $commentdata,true); if(is_wp_error($comment_id)){  err( '重复评论' ); } }

如果使用了 ajax 提交评论,返回 wp_error 错误对象会导致你的文章布局错乱,正确的 ajax 评论提交接口应判断是否返回了 wp_error 错误对象,根据返回不同自定义返回内容。另外 wp_insert_comment 函数也能插入评论到数据库:WordPress 函数 wp_insert_comment 插入评论到数据库中

点点赞赏,手留余香

还没有人赞赏,快来当第一个赞赏的人吧!
admin给Admin打赏
×
予人玫瑰,手有余香
  • 2
  • 5
  • 10
  • 20
  • 50
2
支付
收藏 0 海报

版权归属:本文为原创文章,版权归 所有

本文链接:( 欢迎分享本文,转载请保留出处 )

免责声明:如发现本站有涉嫌抄袭侵权/违法违规的内容,请邮件/留言反馈,一经查实本站将立刻删除!

<< 上一篇

2020-06-17

下一篇 >>

2020-06-17

全部评论( 0 条 )
扫一扫二维码分享