WordPress 一键开启/关闭评论功能

近期关于网站评论问题一直有各种讨论,可以看出大家对评论功能还是比较在意的,随着国内对评论的把关越来越严,这个功…

Wordpress 一键开启/关闭评论功能

近期关于网站评论问题一直有各种讨论,可以看出大家对评论功能还是比较在意的,随着国内对评论的把关越来越严,这个功能应该是值得知道的:“如何一键关闭或开启网站评论功能”。

.singlemiddle-banner{margin-left:auto;margin-right:auto;overflow: hidden;}

在 wordpress 的后台设置中只能一键开启/关闭新文章的评论权限,对旧文章只能设置发布多少天后文章的评论功能自动关闭,最少可以设置为一天时间,这样就不够灵活了,比如几个小时以前发布的文章就无法执行批量关闭评论了…

本站Dragon 主题已经自带集成了此功能,给您更加好的使用体验。

根据文章发布的时间来自动关闭文章的评论功能

当然,对于旧文章可以稍微灵活一点使用以下方法:

/**
 * WordPress 一键关闭/开启评论功能 - 龙笑天下
 * https://www.ilxtx.com/close-or-open-wordpress-comments.html
 * 超过限制天数或小时数后自动关闭 WordPress 文章的评论功能
 */
function lxtx_close_comments( $posts ) {
	if ( !is_single() ) { return $posts; }
	if ( time() - strtotime( $posts[0]->post_date_gmt ) > ( 30 * 24 * 60 * 60 ) ) {
		$posts[0]->comment_status = 'closed';
		$posts[0]->ping_status    = 'closed';
	}
	return $posts;
}
add_filter( 'the_posts', 'lxtx_close_comments' );

上面的代码的作用是,文章发布超过 30 天后,就自动关闭这篇文章的评论功能。你可以根据自己的需要,修改第四行,改为多少天数或小时数。

根据文章的评论数量来自动关闭文章的评论功能

另外,这个方法也不错:当评论达到一定数量后自动关闭 WordPress 文章的评论功能~

/**
 * WordPress 一键关闭/开启评论功能 - 龙笑天下
 * https://www.ilxtx.com/close-or-open-wordpress-comments.html
 * 当评论达到一定数量后自动关闭 WordPress 文章的评论功能
 */
function lxtx_disable_comments( $posts ) {
	if ( !is_single() ) { 
		return $posts; 
	}
	if ( $posts[0]->comment_count > 100 ) {
		$posts[0]->comment_status = 'disabled';
		$posts[0]->ping_status = 'disabled';
	}
	return $posts;
}
add_filter( 'the_posts', 'lxtx_disable_comments' );

上面的代码是当一篇文章的评论数量超过 100 条以后,自动关闭这篇文章的评论功能,请根据自己的需要,修改第 6 行的 100 为你想要的数量。

数据库语句方法来批量关闭或打开已发布文章的评论功能

这个是对旧文章的评论功能的操作。因为是直接操作数据库,故建议在操作前备份数据库先!

批量关闭评论:

UPDATE wp_post SET comment_status='close'

批量打开评论:

UPDATE wp_post SET comment_status='open'

一键关闭/开启 WordPress 评论功能

注意,这个方法会一键关闭/开启所有文章/页面的评论功能,不论是新文章/页面还是旧文章/页面哦。

/**
 * WordPress 一键关闭/开启评论功能 - 龙笑天下
 * https://www.ilxtx.com/close-or-open-wordpress-comments.html
 */
function close_open_comments( $posts ) {
	$postids = array('110','119');
	if ( !empty( $posts ) && is_singular() && !in_array($posts[0]->ID,$postids) ) {
		$posts[0]->comment_status = 'closed';
		$posts[0]->post_status = 'closed';
	}
    return $posts;
}
add_filter( 'the_posts', 'close_open_comments' );

当然,你可能会想保留 ID 为 110 和 119(留言板或友情链接)等文章或页面的评论功能,则自行对第 6 行进行发挥。

最后,如果开启评论的话,则要对评论把好关,防止垃圾评论泛滥哈:

纯代码实现屏蔽 WordPress 垃圾评论 跟 Spam 说再见-BG

纯代码实现屏蔽 WordPress 垃圾评论 跟 Spam 说再见

纯代码实现屏蔽 WordPress 垃圾评论 跟 Spam 说再见

垃圾评论,如今可以说是无处不在,作为 WordPress 使用者的我们,防止垃圾评论的侵扰是必须要做的。而且垃圾评论也就算了,居然还不访问我们的网站直接用脚本刷,连个 pv 值都不贡献下,太抠啦,不…
WordPress 根据评论数量来判断是否显示评论者链接-BG

WordPress 根据评论数量来判断是否显示评论者链接

WordPress 根据评论数量来判断是否显示评论者链接

本文主要讲的是你可以根据评论数来控制是否显示留言者的链接。比如说只有当评论者的评论数大于一万的时候才显示链接,如果小于一万则不显示。当然,一万只是说说而已。 这里评论数肯定要根据邮箱来统计了…
为 WordPress 评论功能增加字数长度限制-BG

为 WordPress 评论功能增加字数长度限制

为 WordPress 评论功能增加字数长度限制

很多读者在你的 WordPress 博客留言都是仅仅为了一个外链,所以他们很忙,随便发个“好文章”“顶一个”这样毫无意义的评论,虽然你可以手动删除他们,但是如果你的网站很受欢迎,删除评论也是很耗…
如何实现 WordPress 指定文章或页面允许评论昵称/内容带连接地址-BG

如何实现 WordPress 指定文章或页面允许评论昵称/内容带连接地址

如何实现 WordPress 指定文章或页面允许评论昵称/内容带连接地址

今天博客 112 兄提出了一个我认为有点奇怪的需求,也就是本文标题这个啦~~ 下班后立马折腾了下,结果死活不成功… 我是用 is_single() 和 is_page() 来判断的。 然后,…

相关参考

超过限制天数后自动关闭 WordPress 文章的评论功能 | WordPress 大学
当评论达到一定数量后自动关闭 WordPress 文章的评论功能 | WordPress 大学
WordPress 博客批量关闭和打开评论功能的方法 | 免费资源部落
WordPress 显示“评论已关闭”如何打开评论功能 – boke112

类别:WordPress函数讲解

本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。

评论 (0)COMMENT

登录 账号发表你的看法,还没有账号?立即免费 注册