请注意,如果您使用页面缓存插件,那么body标记中的代码将是静态的,那么上述示例都不可靠。还有一种简单的方法可以做到这一点(没有对ajax的额外查询,这不是最佳的)
如果要使用javascript测试用户登录状态,可以使用此代码在用户登录时设置cookie,在用户注销时删除cookie。将此示例添加到主题函数中。php
function login_function() {
setcookie(\'wp_user_logged_in\', 1, time() + 31556926, \'/\');
$_COOKIE[\'wp_user_logged_in\'] = 1;
}
add_action(\'wp_login\', \'login_function\');
function logout_function() {
unset($_COOKIE[\'wp_user_logged_in\']);
setcookie(\'wp_user_logged_in\', null, -1, \'/\');
}
add_action(\'wp_logout\', \'logout_function\');
然后是一个简单的javascript cookie测试。
if (document.cookie.indexOf(\'wp_user_logged_in\') !== -1) {
//do something when user logged in
} else {
//do something when user logged out
}