Перенаправление пользователя на url с именем пользователя wordpress

Я хочу перенаправить пользователей после входа в систему на основе имени пользователя.

add_filter( 'login_redirect', 'wppbc_custom_login_redirect', 99, 3 );
function wppbc_custom_login_redirect( $redirect_to, $requested_redirect_to, 
$user ) {
   if ( is_wp_error( $user ) ) {
      return $redirect_to;
   }
   $username = $user->user_login;
   if ( is_array( $form_args ) ) {
      switch ( $username ) {
     case 'User1':
        $redirect_to = 'https://www.example.com/User1';
        break;
     case 'User2':
        $redirect_to = 'https://www.example.com/User2';
        break;
     default:
        $redirect_to = 'https://www.example.com';
      }
   }
   return $redirect_to;
}

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

Имя пользователя x успешно входит в систему и будет перенаправлен на www.example.com/x Имя пользователя y успешно входит в систему и будет перенаправлен на www.example.com/y

Может ли кто-нибудь помочь мне с этим кодом?

$redirect_to = 'https://www.example.com/' . $username; просто объединяет имя пользователя в конце URL-адреса
Jacek B Budzynski 26.06.2018 09:31
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
1
91
1

Ответы 1

Вы не можете так поступать необходимо отправить обратно переменную javascript на ваш сервер, прежде чем сервер сможет обработать значение. Для этого вы можете либо запрограммировать функцию javascript, которая отправляет форму, либо использовать ajax / jquery. jQuery.post

Возможно, самый простой подход для вас - это что-то вроде этого

function myJavascriptFunction() { 
  var javascriptVariable = "John";
  window.location.href = "myphpfile.php?name = " + javascriptVariable; 
}

В myphpfile.php вы можете использовать $ _GET ['name'] после того, как ваш javascript был выполнен.

Другие вопросы по теме