我正在尝试根据他们登录的次数向我的 wordpress 网站用户显示一些内容。我尝试使用 user_meta 和 wp_login 挂钩来完成此操作。
add_action( 'wp_login', 'survey_login' );
function survey_login() {
global $current_user;
get_currentuserinfo();
$login_count = get_user_meta($current_user->ID, 'login_count', true);
if($login_count == "") { $login_count = 0; }
update_user_meta($current_user->ID, "login_count", $login_count++ );
if($login_count >= 5) {
$_SESSION['csm_survey_login'] = true;
}
}
这似乎应该可以工作,但由于某种原因,user_meta 键仅在大约 1/20 的时间内被添加/更新。我一直无法找到如何或为什么的模式。
我尝试将功能简化为
add_user_meta($current_user->ID, 'login_count', 1);
或者
update_user_meta($current_user->ID, 'login_count', 1);
两者都给我同样的麻烦。
任何人都知道为什么 update_user_meta 或 wp_login 可能只工作一小部分时间?