Если вы новичок в экосистеме WordPress, вам может быть сложно понять ее гибкость. Конечно, есть буквально десятки тысяч тем и плагинов, которые вы можете использовать, и вы можете подумать, что WordPress чрезвычайно расширяемый, и если вы обратите внимание на «Действия» и «Фильтры» WordPress предоставляет, вы будете удивлены тем, что вы можете делать с ним.

В этом руководстве я расскажу вам об использовании фильтров WordPress для изменения перенаправления. Помните, что мы научились создавать плагин для WordPress, Таким образом, вы можете использовать эти коды в вашем плагине.

Давайте начнем!

Используйте гибкость WordPress с помощью действий и фильтров

Лес « Крючки Без тени сомнения, настоящая причина гибкости WordPress. Без системы " крючки », темы были бы намного более жесткими и, что более важно, большинство WordPress плагины даже не существовало бы.

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

Действия запускаются в определенное время, и фильтры управляют возвращенными данными (nНУ будет работать на фильтрах в этом руководстве). Вот почему плагины используют скобки для управления WordPress, не говоря уже о том, что некоторые плагины и темы предлагают свои собственные хуки (Крючки).

Управление перенаправлением для разных сценариев

Как и обещали, поговорим о фильтрах. У нас есть семь фильтров на WordPress, которые мы обсудим в этом уроке.

Перенаправление при регистрации пользователя

Обычно новые пользователи перенаправляются на форма подключение после обычной регистрации.

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


Перенаправление при подключении и / или отключении

После каждого входа пользователи получают доступ к вашей панели. Если у ваших пользователей нет доступа, вы можете перенаправить их на другую страницу. Вы даже можете сделать условие, которое проверяет если пользователь является администратором или нет.

В следующем примере мы проверим роль пользователя и перенаправим «Абоненты» на главную страницу:

роли) && is_array ($ user-> roles)) {if (in_array ('подписчик', $ user-> roles)) {return home_url (); } else {return $ redirect_to; }} возвращение; }?>

То же самое можно сделать с фильтром logout_redirect ". Вместо того, чтобы отправлять их на главную страницу, вы можете перенаправить их на " до свидания Или по вашему выбору.

роли) && is_array ($ user-> roles)) {if (in_array ('subscriber', $ user-> roles)) {// измените слаг ниже на слаг вашей собственной страницы return home_url ('/ goodbye /'); } else {return $ redirect_to; }} возвращение; }?>

Перенаправление после сброса пароля

По умолчанию пользователи, которые вводят свои имена пользователей или адреса электронной почты в форма Сообщения о сбросе пароля отправляются обратно на форма связь. Фильтр " lostpassword_redirect Позволяет нам изменить это поведение.

Если вам нужно поделиться дополнительной информацией о процессе сброса пароля (проверка спама, чтобы найти письмо с подтверждением), вы можете перенаправить пользователей на определенную страницу:


Перенаправление после комментария

Фильтр " comment_post_redirect Позволяет изменить страницу, на которую пользователи перенаправляются после публикации комментария.

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


Перенаправление после действия "Нажать"

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

К счастью, мы можем изменить это с помощью фильтров " press_this_redirect_in_parent "И" press_this_save_redirect ». Используя следующий код, всплывающее окно закроется после действия Это Пресс .


в конце концов

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