Ошибочный редирект после авторизации в админке WordPress

Возникла у меня как-то при переезде на новый хостинг проблема — ппосле авторизации в админке я попадал не в саму админку, а на страницу с ошибкой о том, что она не существует.
В интернете просто огромное количество «решений» данной проблемы, но ни один мне не подошел. Также очень много комментариев, что я не один такой, кому не подходят все описанные советы.

Вот как это выглядело у меня:

wp-redirect1

С таким вот адресом открывалась страничка авторизации. А вот сюда я попадал после успешной авторизации:

wp-redirect2

Я долго пытался гуглить, но именно исправления неверного редиректа не нашел. В итоге залез в файл \wp-includes\general-template.php и блок

if ( !empty($redirect) )
$login_url = add_query_arg(‘redirect_to’, urlencode($redirect), $login_url);

Поменял на

if ( !empty($redirect) )  {
$redirect = str_replace(«http://www.».$_SERVER[«HTTP_HOST»].»/», «», $redirect);
$redirect = str_replace(«http://».$_SERVER[«HTTP_HOST»].»/», «», $redirect);
$login_url = add_query_arg(‘redirect_to’, urlencode($redirect), $login_url);
}

Вот и все.

Честно говоря, сам вижу, что решение «тупое» такое, прям «в лоб», что называется, но тратить много времени на разбирательство не хочу. Написал сюда просто ради сохранения информации на будущее. Если кому-то поможет, буду рад.

Опубликовано в категории Обо всем. Прямая ссылка на данную запись: permalink.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *