Редирект после авторизации в wordpress

Задача практически типовая, потому что рано или поздно может понадобиться её решить. Специфика wordpress в довольно слабой документированности частных вопросов, что иногда отбивает охоту что то на нем делать.

После авторизации со страницы /wp-login.php мы оказываемся в админке (/wp-admin). Как можно исправить данную ситуацию и попасть в какое то более полезное место на сайте? Вот несколько разных подходов.

Задание параметра GET — redirect_to
Если заглянуть в код /wp-login.php, то мы увидим, что программа проверяет наличие такого параметра как redirect_to, который указывает куда  следует перейти после авторизации. Поэтому для авторизации пользователя мы можем составить специальный url на страницу авторизации, вроде такого:

Тогда пользователи будут попадать после авторизации туда, куда нам нужно. Этот вариант не будет работать, если мы используем для авторизации какой либо запрограммированный блок с полями логин и пароль.

Исправим переменную редиректа в коде страницы wp_login.php
Это некая полумера для любителей править код движка сайта. Мы можем явно задать переменную $redirect_to в коде, в том месте где идет вызов фильтров $redirect_to = apply_filters(‘login_redirect’, $redirect_to, … Ясно, что после обновления движка ваши исправления канут в лету, поэтому, если вы собираетесь поддерживать сайт в обновленном состоянии, это не ваш вариант.

Пишем фильтр
Типично, что любой сайт часто содержит какой то специфический модуль (user plugin), в котором разработчик собирает уникальные дополнения и исправления к движку. Вот именно в такой модуль можно добавить код небольшого фильтра, выполняющего редирект после авторизации пользователя на нужную страницу. Собственно сам код.

Даже комментировать нечего, так все просто. А главное, то что это будет работать в любом случае, когда авторизация выполняется средствами движка. Дальше ничего не мешает вам сделать эту страницу настраиваемой через администрирование сайта, привязать разные страницы в зависимости от ролей пользователей и т.п.

Мало букафф? Читайте есчо !

Добавление сайдбара в виде блочного шаблона в WP

Февраль 20, 2023 г.

С появлением Гутенберга (Gutenberg), микрошаблоны вышли на новый уровень. Посмотрим пример создания собственного микрошаблона и вставки его в шаблон. Начать надо с регистрации сайдбара, для этого вставим в functions.php темы следующий код: [crayon-6a07e821cb428959022109/] ...

Читать

WP Plugin Core Settings

Август 20, 2018 г.

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

Читать

Выводим дополнительные столбцы для кастомных публикаций в админке WordPress

Апрель 21, 2016 г.

После регистрации кастомного типа публикации в WP, вы выполучите новый раздел в адимнке, возможность добавлять и редактировать публикации данного типа. В общем списке записей будет скорее всего два столбца - заголовок и дата. Для кастомных типов этого ...

Читать

Как добавить фильтр в список записей в админке Wordpress?

Апрель 21, 2016 г.

Выведя дополнительные столбцы в админке, хотелось бы иметь возможность фильтрации по этим полям. Как это делать, покажу на примере фильтрации по мета-полю публикации. Если вы читаете данный гайд, то уже знаете : Как добавить кастомный тип публикации ...

Читать
 

Комментарии к «Редирект после авторизации в wordpress»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий:

Много комментариев в “Редирект после авторизации в wordpress”

  1. Александр:

    Как все просто, когда ты программист. И как все страшно, когда экономист :))