if (is_user_logged_in()){
if(!isset($_COOKIE[\'alertuser\'])){
// set cookie
$timer = time()+86400;
setcookie(\'alertuser\', \'1\' $timer);
// show alert
function load_alert(){
wp_register_script(\'alert\', get_template_directory_uri() . \'/js/alert.js\', array( \'jquery\' ));
wp_enqueue_script( \'alert\');
}
add_action(\'admin_enqueue_scripts\', \'load_alert\');
}
} else {
$timer = time()-86400;
setcookie(\'alertuser\', \'\', $timer); // <-problem here
}
我试图仅在客户首次登录时附加js文件。注销后,cookie应该被删除,但不是。为什么?
(这可能更像是一个特定于WP的php问题,如果是,很抱歉在这里发布。)
SO网友:Dave
看起来我需要为我的cookie添加一条路径。这解决了它:
$timer = time()+86400;
setcookie(\'alertuser\', \'1\', $timer, \'/\');
以及
$timer = time()-86400;
setcookie(\'alertuser\', \'\', $timer, \'/\');