Задать вопрос
@Turik-us

Как авторизовать пользователя на сайте с Wordpress?

есть сайт на вродпресс.
как мне авторизовать пользователя в вродпресс, без стандартных функций из вордпресс.
доступ к бд имеется, т.е. все key и auth есть.
делаю так:
$time = time() + 2 * 86400000;
$data = 'adminjdwD|'.$time;
$key = '$l*gvjdCkIUb;.Sj<code>=tpvo)myKm%lBH{<e?b3_%$l2EQWO2z/iUKc|&fBO|</code>mQ>E';
$salt = 'S[Rr@?Wa7k]qmDboI9e?K<code>mdRPg+1!w?&U)DeVf-p^0h;oD6.X+XBdYgF4^L:Y</code>C';
$key = hash_hmac('md5', $data, $key.$salt);
$hash = hash_hmac('md5', 'admin|'.$time, $key);
$cookie = 'admin|'.$time.'|'.$hash;
setcookie('wordpress_logged_in_'.md5('http://wp.ru'),$cookie,$time,'/','.wp.ru');

на сайте авторизует, но в админку не пускает
  • Вопрос задан
  • 2688 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 1
@Turik-us Автор вопроса
$time = time() + 2 * 86400000;
$data = 'adminjdwD|'.$time;
$key = '$l*gvjdCkIUb;.Sj<code>=tpvo)myKm%lBH{<e?b3_%$l2EQWO2z/iUKc|&fBO|</code>mQ>E';
$salt = 'S[Rr@?Wa7k]qmDboI9e?K<code>mdRPg+1!w?&U)DeVf-p^0h;oD6.X+XBdYgF4^L:Y</code>C';
$key = hash_hmac('md5', $data, $key.$salt);
$hash = hash_hmac('md5', 'admin|'.$time, $key);
$cookie = 'admin|'.$time.'|'.$hash;
setcookie('wordpress_logged_in_'.md5('http://wp.ru'),$cookie,$time,'/','.wp.ru'); //обычный юзер


для админа почти так же, только другие куки, другой ключ и соль (хранятся в базе)
setcookie('wordpress_'.md5('http://wp.ru'),$cookie,$time,'/wp-admin','.wp.ru'); //админ
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Slams
@Slams
Задам логичный вопрос: а почему не подходят встроенные функции? Или какой-то бридж делаете?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы