Перенаправление за пределы WP после входа в систему


У меня есть http://example.com/admin.php

Там я проверяю, является ли пользователь администратором или нет. Если нет, я отправляю пользователя на страницу wp-входа следующим образом:

blog.mysite.com/wp-login.php?redirect_to=http%3A%2F%2Fmysite.com/admin.php

Я ожидаю перенаправление обратно для admin.php но WordPress всегда отправляет меня на панель управления wp-admin.

После исследования я обнаружил, что, когда конечный хост не находится в фильтре allowed_redirect_hosts, WP просто перенаправляет пользователя на wp-admin.

Как я могу добавить больше хостов в фильтр?

Если я поставлю этот пример из WP Кодекс в functions.php перестает работать.

add_filter( 'allowed_redirect_hosts' , 'my_allowed_redirect_hosts' , 10 );
function my_allowed_redirect_hosts($content){
    $content[] = 'blog.example.com';
    $content[] = 'codex.example.com';
    // wrong: $content[] = 'http://codex.example.com';
    return $content;
}
Author: fuxia, 2013-07-16

1 answers

Наконец-то это работает! Что я делал неправильно, так это помещал код в WP functions.php файл, а не в моей пользовательской теме functions.php файл.

Спасибо всем!

 -1
Author: chipi92, 2013-07-16 16:17:36