如何限制用户的会话持续时间



这可能吗?wordpress网站是为孩子们设计的,所以我想限制他们的网站使用。我希望他们每天能够使用网站一定的时间,比方说4个小时。4个小时后,他们就会退出网站,只能在第二天再次访问。有人能帮忙吗?

最简单的解决方案是使用表格记录活动并将它们相加,然后使用中间件来控制用户

您可以按如下方式实现逻辑。代码没有经过测试,但它将有助于实现逻辑。加载时,它将检查用户是否登录。如果用户已登录,则检查当前时间和上次登录时间,并相应地应用逻辑

add_action('init', 'check_login_logout');
function check_login_logout() {

if(is_user_logged_in()) {

$current_time = time();
$last_login = get_user_meta($user_id, 'last_login', true);
if($last_login)  {
if( ($current_time - $last_login <= 24) && $current_time - $last_login > 4 ){
wp_logout();
header("Location: http://fubar.com/login/?logout=0");
exit();
}else if( ($current_time - $last_login > 24){
$last_login = update_user_meta($user_id, 'last_login', $current_time);
}
}else{
$last_login = update_user_meta($user_id, 'last_login', $current_time);
}
} 
} 

最新更新