2016-07-31 2 views
-2

나는 PHP를 사용하는 클라이언트 페이지를 가지고 있으며,이 페이지는 Wordpress 페이지로 이동합니다. 클라이언트 페이지의 세션은 기억되지만 Wordpress에서 새 페이지를로드하면 세션이 비어 있습니다. Wordpress에서 내 고객 페이지처럼 내 세션 데이터를 저장하지 않는 이유는 무엇입니까?Wordpress 사이트의 세션 사용

이 코드는 로그인 페이지에 :

my_session_register('user_id'); 
$_SESSION['user_id']=$user_id; 
header('Location: booking_user.php'); 

이 코드는 워드 프레스에서 세션을 확인 :

if (!my_session_is_registered('user_id')) { 
    header('Location: login.php'); 
} 

난 그냥 워드 프레스에 세션을 유지하는 방법을 모르겠어요.

답변

0

session_start()을 (를) 추가하는 것을 잊었습니다. 문제가 발생할 수 있습니다.

당신이 $_SESSION을 사용하려는 경우

session_start() 그것에 대해 자세히 알아보기가 있어야합니다 : Here

0

당신은 유 세션을 사용 또는 대안 파일에 저장하고이를 포함하는 모든 페이지에 session_start();를 추가해야 매번

0

다른 두 답변과 똑같은 대답을하고 있지만 그 이유를 알려 드리겠습니다. 자료 Wordpress는 입니다.이므로 기본적으로 $_SESSION을 사용하여 페이지간에 데이터를 푸시 할 수 없습니다. 그래서 session_start()을 Wordpress 사이트에 추가해야합니다. 당신은 워드 프레스의 init 후크에 session_start()가 발생 할 수 있습니다 작동하지 않습니다

// You may just be able to write this 
add_action('init', 'session_start'); 

위의 경우에는 (내가 볼 수없는 이유는없는 것) :

// You can add your own function as a wrapper 
add_action('init', 'startCustomSession'); 

function startCustomSession() 
    { 
     session_start(); 
    } 
관련 문제