-2

我正在尝试限制内容使用。我需要实现的是,一旦用户注销,他们将在接下来的 24 小时内无法登录。或者如果那不可行,我该怎么做用户只能在 24 小时内登录一次?使用 WordPress

4

1 回答 1

0

您可以通过添加一个自定义字段来处理这种情况,比如last_login_timestamp为配置文件(即用户注册时)。基本上,每当用户注销时,您都可以使用wp_logout钩子更新此自定义字段。就像是

function slug_update_user_last_login_hook() {
    if(! is_admin()) { // obviously not for admin
      // logic to update custom form field for user
    }
}
add_action('wp_logout', 'slug_update_user_last_login_hook');

当用户登录时,您可以检查上次登录时间是否小于或等于 24 小时。

function slug_24_hour_login_check() {
        if(! is_admin()) { // obviously not for admin
          //compare the the time of custom form field of logged in user's id
          //if not you can logout user and redirect to another page using wp_redirect
          wp_redirect( $url_of_24_hour_login_notice );
        }
}
add_action('wp_login', 'slug_24_hour_login_check');

让我知道它是如何工作的。

于 2019-05-12T07:47:10.530 回答