Loading
0

WordPress教程 关闭WordPress网站评论功能方法

很多WordPress网站会打开评论功能,但是也有人不喜欢这个功能,担心垃圾评论太多,会想着关闭评论,那么关闭WordPress网站评论功能方法是什么?

WordPress教程 关闭WordPress网站评论功能方法

主要有以下几种方法:

1. WordPress系统自带的关闭功能。

在后台的评论选项里就可以设置,但是如果我们选择了关闭评论功能,所有的日志都不能发表评论了,我们一般也不会这样做,除非我们的博客不需要评论。单篇日志在发布时或在编辑状态下也可以禁止评论,但那样做相当麻烦,特别是日志数量已经很多的博客,操作起来很费时,不值得这样做。

2. 修改模板。

将文章在固定的时间限制内自动禁止评论,这样防止不断的有人去翻旧日志。参考下面一段function函数,Wordpress3下运行:

<?php

function 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', 'close_comments' );

?>

放到主题functons.php文件中就可以了。代码中的数字“30”是指发表超过30天的日志将会关闭评论功能,读者不能再对其发表评论了。可以设置长一些,比如60天, 120天。

如果你不愿意修改functions.php这个文件,不要紧,将这段代码做成一个插件也可以的,在标签<?php的后面加上一行注释即可,如:

/*

Plugin Name: Close Comment

*/

然后保存为一个插件文件,这样Wordpress就会识别到这是一个插件了。Wordpress插件库也有一款能够关闭旧日志评论功能的插件可用—— Comment Timeout。

3. 通过运行SQL语句也可以关闭日志评论功能。

登录SQL数据库管理后台:

运行

UPDATE wp_posts SET comment_status = 'closed';

//关闭所有的日志评论功能;

运行

UPDATE wp_posts SET comment_status = 'registered_only';

//只有注册用户才能发表评论;

运行

UPDATE wp_posts SET comment_status = 'closed' WHERE post_date < '2013-01-01' AND post_status = 'publish';

// 关闭2013年01月01日之前发表的日志评论功能,可以设定成你想要的其它日期

需要注意的一点是,对SQL数据库的操作存在一定的风险,操作前应该先做好备份。