2015-12-22 151 views
1

我一直在修補這個問題,似乎無法發現問題。我能夠獲得正確的狀態,但不會保存在cookie中。在Wordpress中設置Cookie

的functions.php

add_action('wp_ajax_setBgSoundCookie', 'so_wp_ajax_function'); 
add_action('wp_ajax_nopriv_setBgSoundCookie', 'so_wp_ajax_function'); 
function so_wp_ajax_function(){ 
    $state = $_POST['state']; 
    setcookie("bg_sound", $state ,time()+60*60*24); //expires in 24 hours 
    wp_die(); 
} 

myscript.js

function setSoundCookie(state){ 

    $.ajax({ 
     url: vision_globals.ajaxurl, 
     type: 'POST', 
     data: { 
      action :'setBgSoundCookie', 
      state : state 
      }, 
     success: function (data) { 

      }, 
     error: function (er) { 
      console.log(er); 
      } 
     }); 
    } 
+0

'return $ bgsstate;'...我不相信'$ bgsstate'在這裏被定義... – rnevius

+0

我在最新版本中刪除了它,感謝您指出它。 – Pennf0lio

回答

1

確保設置Cookie路徑:

setcookie('visionare_sound', $state, time()+60*60*24, '/'); 

的cookie被設定..但可能不是你想要的路徑。

+0

啊哈!你是對的。它的作用就像一種魅力。謝謝! – Pennf0lio