Как мне показать имя пользователя и адрес электронной почты текущего вошедшего в систему пользователя на странице, которую он просматривает?


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

Author: kiamlaluno, 2011-11-01

3 answers

Вы можете создать блок с форматом PHP-кода (не забудьте активировать модуль фильтра PHP) и поместить внутрь:

<?php
  //Retrieve the global variable for the connected user
  global $user; 
  echo 'Hello ' . $user->name;
  echo 'Your email is :' . $user->mail;
?>

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

Смотрите документацию по глобальным переменным Drupal .

 2
Author: tostinni, 2011-11-03 03:24:44

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

 2
Author: wizonesolutions, 2011-11-02 10:18:41

Простым способом было бы создать представление для этих полей с контекстным фильтром "идентификатор пользователя от зарегистрированного пользователя". Используйте отображение блоков и покажите его в любом месте вашего сайта.

Пожалуйста, укажите, есть ли у вас более конкретные требования к компоновке. Как и во всем, что есть в Drupal, существует множество различных способов получения одних и тех же результатов;-)

 1
Author: uwe, 2011-11-02 03:46:06