web-dev-qa-db-ja.com

ログアウト時にCookieが設定解除されないのはなぜですか?

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ファイルを添付しようとしています。どうして?

(たぶんこれはWP特有のphpの質問である、もしそうなら、ここに投稿して申し訳ありません。)

1
Dave

クッキーにパスを追加する必要があるようです。これはそれを修正しました:

$timer = time()+86400;
setcookie('alertuser', '1', $timer, '/');

そして

$timer = time()-86400;
setcookie('alertuser', '', $timer, '/');
1
Dave