이 작업을 수행해야한다면 내 쿠키를 사용하여 로그인을 확인하고 필요할 때 확인하기 위해 WordPress 만로드합니다.
wordpress_logged_in_ {some-hash} 쿠키는 사용자를 결정하는 데 사용될 수 있으며 WordPress는이를 사용하여이를 결정합니다. 쉽게 다시 구현할 수는 없지만 여러 요청에 WordPress를로드하지 않고도 사용할 수 있습니다.
예를 들어, 다음은 쿠키 해시입니다 (완전히 데이터를 구성했지만 사실적임).
key: wordpress_logged_in_1234567890abcdef1234567890abcdef
value: admin|1234567890|abcdef1234567890abcdef1234567890
쿠키가 유효한지 WordPress가 아는 방식은 관련이 없으며 쿠키가 한 번 유효한지 여부 만 알면 비밀로 서명합니다.
따라서 처음에는 사용자가 아직 검증되지 않았습니다. wp-load.php를로드하면 WP는 쿠키의 유효성을 검사하고 사용자를 로그인합니다. 이제 사용자가 로그인했다는 것을 증명하기 위해 모든 작업을 수행 한 후 고유 쿠키를 설정합니다. 이 키는 사용자 정의가 될 수 있으며 hash_hmac 함수를 사용하여 비밀 키를 사용하여 메시지 요약으로 만드는 값입니다.
$key = ... // the key from the WP cookie
$value = ... // the value from the WP cookie
$hash = hash_hmac ( 'md5' , $key.$value , 'some secret key' );
setcookie ()를 사용하여 다시 횡설수설을합니다. 향후 요청시이 쿠키를 귀하에게 다시 보냅니다. 먼저이를 확인하고 동일한 해시 함수와 비밀 키를 사용하여 유효성을 검사 할 수 있습니다.
비밀 키를 아는 사람 만 해시를 생성 할 수 있습니다. 따라서 그들이 WP 쿠키에 대해 보낸 것과 일치하는 유효한 해시를 다시 보내면 이전에 코드를 통해 WP로 유효성을 검사 한 것을 알 수 있으며 해당 값에서 사용자 이름을 얻을 수 있습니다 (첫 번째 쿠키의 일부). 그런 다음 WP를로드 할 필요가 없습니다.
비밀 키는, BTW,되어야한다 긴 및 임의 . 짧은 비밀번호가 아닙니다. 사전 단어가 아닙니다. 큰 무의미한 횡설수설. 라인 노이즈 및 그 많은 것. 키 예 :
'GHY5hFNqq4Ntdu=3:SUp8#/+_W!- @@^@xslN*L|N+Vn;(1xo8jNyp,au$v9Ki5*'