WordPress如何定时删除从未登录的恶意注册用户

相信很多WordPress站长都遇到过被恶意注册用户,主题君就遇到过,被恶意注册70万用户,导致数据库突增1G大小。

所以主题君就想着有没有法子让WordPress后台定时删除从未登录的恶意注册用户,然后就是查了查,还真找到了解决方案。

函数代码

//定时任务
add_filter( 'cron_schedules', 'salong_add_every_time' );
function salong_add_every_time( $schedules ) {
	$schedules['every_time'] = array(
		'interval' => 600,
		'display' => __( '每隔10分钟', 'salong' )
	);
	return $schedules;
}
if ( ! wp_next_scheduled( 'salong_add_every_time' ) ) {
	wp_schedule_event( time(), 'every_time', 'salong_add_every_time' );
}
add_action( 'salong_add_every_time', 'salong_every_time_update_douban_average' );
function salong_every_time_update_douban_average() {
	$blogusers = get_users(array( 'meta_key' => 'jh' ,'meta_value' => '' ));//我这里检查jh字段为空的用户,大家可以自由修改
	foreach ( $blogusers as $user ) {
		wp_delete_user( $user->ID );//删除用户
	}
}

需要注意的是,如果被删除用户有发表过文章等内容,不指定删除后由谁继承,将会全部删除。当然,这里是恶意注册用户,都没登录过,不存在这个问题,直接删就行了。

发表评论

主题下载

使用QQ扫描二维码即可下载!

或查找QQ群:772774006

直接下载