Перейти к содержанию

Узнать id пользователя на странице которого находимся


Рекомендуемые сообщения

Здравствуйте. Установил плагин php code, вставил на страницу пользователя и набрасал php-код. Мне собственно теперь нужно при переходе в профиль пользователя подставлять его id, это наверное нужно парсить html? Получать инфо о пользователе хочу так:

$member = \IPS\Member::load( $id );

 

Ссылка на комментарий
Поделиться на другие сайты

В данный момент реализовал привязку к url, всё работает. Но насколько этот способ правильный не знаю. Если парсить html, то тоже не известно насколько это будет правильно..

$text = $_SERVER['REQUEST_URI']; //получить текущий url
$pattern = "|profile/(.+?)-|is"; //регулярка (получить текст между фразами "profile/" и "-") 
preg_match($pattern, $text, $out); //парсер
$id = $out[1]; //Получить id пользователя

$member = \IPS\Member::load( $id ); //Получить инфо о пользователе

 

Может есть какая нибудь готовая функция?

Ссылка на комментарий
Поделиться на другие сайты

$id = \IPS\Request::i()->id

только надо учитывать что этот плагин "php-код" должен отработать только на странице пользователя, иначе \IPS\Request::i()->id может имеет другое значение.
Если это плагин класса IPS\core\modules\front\members\profile то там уже загружен пользователь в $this->member

Ссылка на комментарий
Поделиться на другие сайты

8 часов назад, soka сказал:

$id = \IPS\Request::i()->id

только надо учитывать что этот плагин "php-код" должен отработать только на странице пользователя, иначе \IPS\Request::i()->id может имеет другое значение.
Если это плагин класса IPS\core\modules\front\members\profile то там уже загружен пользователь в $this->member

Да плагин php-код будет работать только на страницах профиля пользователя, я думаю это должно сработать, спасибо)

А скажите пожалуйста, есть ли документация на IPS 4.x для работы с кодом? А то сейчас мой единственный источник это метод тыка и копание исходников разных модулей и этот форум)

Ссылка на комментарий
Поделиться на другие сайты

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...