- get_userdata() WP 0.71
- Возвращает
- Использование
- Примеры
- #1 Как выводить данные из полученного объекта данных
- #1.2 Данные в переменную
- #2 Методы класса
- get_the_author_meta() WP 2.8
- Возвращает
- Использование
- Примеры
- #1 Получим e-mail адрес пользователя
- #2 Выведем имя пользователя и ссылку на Email
- get_currentuserinfo() WP 0.71
- Возвращает
- Использование
- Шаблон использования
- Примеры
- #1. Использование отдельных переменных.
- #2. Проверка существует ли пользователь.
- #3 Еще один пример: как разделить показ авторизованным и нет
- WP_User<> WP 2.7.0
- Возвращает Concerned user ID. * @type mixed . Optional second and further parameters, typically object ID. * > * @param WP_User $user The user object. */ apply_filters( ‘user_has_cap’, $this->allcaps, $caps, $args, $this )»> user_has_cap
- Возвращает
- Использование
- Свойства класса
- Магические методы
- Публичные методы
- Примеры
- #1 Проверим право юзера
- the_author_meta() WP 2.8.0
- Возвращает
- Использование
- Примеры
- #1. Выведем email автора поста (используем функцию внутри Цикла):
- #1.1 Выведем email автора с Продвинутое использование
get_userdata() WP 0.71
Получает данные указанного пользователя в виде объекта WP_User.
Данные, возвращаемые функцией, полностью соответствуют полям таблиц БД wp_users и wp_usermeta . Описание таблиц см. тут.
Некоторые полезные значения полей таблиц wp_users и wp_usermeta , которые вы можете использовать для получения данных:
Это pluggable функция — т.е. её можно заменить из плагина. Это значит, что она будет работать (подключается) только после подключения всех плагинов, а до этого момента функция еще не определена. Поэтому нельзя вызывать эту и зависящие от неё функции прямо из кода плагина. Их нужно вызывать через хук plugins_loaded или позднее, например хук init.
Замена функции (переопределение) — в плагине можно создать функцию с таким же названием, тогда она заменит текущую функцию.
Возвращает
WP_User|false . Объект данных WP_User. false — если не удалось найти указанного пользователя.
С версии 3.2 возвращаемые данные немного изменились: возвращается объект WP_User . Данные в объекте разбиваются на группы: data , caps , roles (раньше данные возвращались в общем списке). Однако, благодаря «волшебным» (служебным) методам PHP, данные можно получить как и прежде. Например, сейчас данные хранятся так: get_userdata()->data->rich_editing , но получить их можно так: get_userdata()->rich_editing , несмотря на то, что var_dump() не покажет эту взаимосвязь.
Использование
Примеры
#1 Как выводить данные из полученного объекта данных
#1.2 Данные в переменную
Еще одни пример, только тут запишем данные сначала в переменные, а затем выведем из на экран:
#2 Методы класса
Получаемый объект с помощью get_userdata() — это экземпляр класса и у него есть методы, которые можно использовать. Иногда это может пригодится. Вот простой пример получения опции пользователя, с помощью метода $user->get() :
Источник
get_the_author_meta() WP 2.8
Возвращает указанные метаданные указанного или текущего пользователя (автора).
Если функция используется внутри цикла, то не обязательно указывать ID пользователя. В этом случае, функция вернет данные автора поста. ID пользователя нужно указывать, если функция используется за пределами цикла.
Чтобы сразу вывести данные на экран используйте аналогичную функцию the_author_meta().
Плагины могут дополнять данные пользователя новыми полями (такие данные добавляются в таблицу wp_usermeta для которых указывается ключ и значение). Чтобы получить такое значение поля, нужно указать его ключ в параметр $field .
Хуки из функции
Возвращает
Строку . Указанные данные пользователя, если они существуют. Если указанное поле не найдено, то будет возвращена пустая строка.
Использование
Название поля, данные которого нужно вернуть. Может быть:
$user_id(число) ID пользователя. Если указать этот параметр, то функцию будет возвращать данные указанного пользователя (автора). По умолчанию, выводятся данные текущего пользователя (если функция используется внутри цикла WordPress).
По умолчанию: текущий пользователь
Примеры
#1 Получим e-mail адрес пользователя
Получим e-mail автора текущего поста и поместим его в переменную $user_email для дальнейшего использования. (помните, эта функция возвращает данные, а не выводит их на экран).
Заметка: если вы выводите данные на отдельной странице, перед вызовом функции get_the_author_meta() должна быть использована функция the_post() . Или вам нужно отдельно указать ID автора поста во втором параметре ( $post->post_author ).
#2 Выведем имя пользователя и ссылку на Email
Получим email адрес пользователя с ID 25 и выведем его «отображаемое имя»:
Источник
get_currentuserinfo() WP 0.71
Устанавливает глобальную переменную $current_user , в нее записываются данные текущего авторизованного пользователя.
Данные будут полностью соответствовать полям таблицы wp_users из базы данных и так же метаполям текущего пользователя (таблица wp_usermeta).
Также, функция заполняет следующие глобальные переменные:
- $user_login
- $user_ID
- $user_email
- $user_identity — Имя пользователя, указанное в поле настроек ‘Отображать как (How to display name)’ (с версии 3.0)
Возвращает
true|false|WP_User . False во время XML-RPC запроса или при неправильных куках авторизации. Null когда переменная $current_user установлена.
Использование
Шаблон использования
Примеры
#1. Использование отдельных переменных.
Много данных пользователя записываются в отдельные глобальные переменные, которые можно использовать, например, так:
Получим:
E-mail адрес пользователя Leonid: leonid@mail.ru
ЗАМЕТКА: переменная $display_name может не работать в версиях выше 2.5, используйте вместо неё $user_identity.
#2. Проверка существует ли пользователь.
Чтобы проверить авторизован (залогинен) ли пользователь, используйте следующий условный тег:
#3 Еще один пример: как разделить показ авторизованным и нет
Как показать один текст авторизованным пользователям и другой не вошедшим в систему:
Источник
WP_User<> WP 2.7.0
Класс WordPress который работает с отдельным пользователем: позволяет получить данные пользователя, удалить/добавить возможности и т.д.
Чтобы получить экземпляр этого класса для текущего пользователя, используйте функцию wp_get_current_user().
Хуки из класса
Возвращает Concerned user ID. * @type mixed . Optional second and further parameters, typically object ID. * > * @param WP_User $user The user object. */ apply_filters( ‘user_has_cap’, $this->allcaps, $caps, $args, $this )»> user_has_cap
Возвращает
Использование
Если вместо $id передан объект WP_User, или другой объект, или массив данных юзера, то указанные данные будут взяты без использования кэша. В противном случае (если ID — число) данные будут получены из кэша или из БД с помощью метода get_data_by() , он же устанавливает кэш, если его еще нет.
Свойства класса
Если указаны id или name конструктор добавит к существующим свойствам все свойства пользователя из таблицы wp_usermeta и wp_users , такие как: user_login , user_pass , user_nicename , user_email , user_url , user_registered , user_activation_key , user_status , display_name , spam (MU сборка), deleted (MU сборка).
Магические методы
WP_User содержит так называемые магические методы, которые позволяют налету создавать/возвращать вызываемые свойства.
__get( $key ) Получает значение поля по ключу.
$key — название произвольного поля.
Возвращает: значение метаполя __isset( $key ) Определяет установлено ли свойство из таблиц users или usermeta.
Возвращает: true/false __set( $key, $value ) Устанавливает свойство для класса (метаполе). $key — название произвольного поля.
$value — значение произвольного поля.Имейте ввиду, что установка свойства этим методом влияет только на этот класс и не устанавливает их в БД. Для установки в БД используйте wp_update_user() или update_user_meta().
Возвращает: ничего.
Публичные методы
Примеры
#1 Проверим право юзера
Проверим может текущий пользователь редактировать профили других пользователь:
Источник
the_author_meta() WP 2.8.0
Выводит указанное поле метаданных текущего или указанного пользователя. Метаданные указываются в профиле.
Указывать $user_id нужно, если функция используется за пределами цикла WordPress.
Можно использовать внутри цикла WordPress, то параметр $user_id указывать не нужно — данные будут браться для текущего автора поста.
Хуки из функции
Возвращает
Использование
Данные которые нужно вывести. Доступные поля:
user_login
user_pass
user_nicename
user_email
user_url
user_registered
user_activation_key
user_status
display_name
nickname
first_name
last_name
description или user_description
jabber
aim
yim
user_level
user_firstname
user_lastname
rich_editing
comment_shortcuts
admin_color
plugins_per_page
plugins_last_view
ID
ID пользователя. Если указать этот параметр, то функцию будет возвращать данные указанного пользователя (автора).
По умолчанию данные будут выводиться для текущего пользователя (когда используется внутри цикла WordPress).
По умолчанию: false (текущий пользователь)
Примеры
#1. Выведем email автора поста (используем функцию внутри Цикла):
#1.1 Выведем email автора с Продвинутое использование
Некоторые плагины могут добавлять свои мета поля для пользователей, чтобы вывести такие мета поля нужно указать их название в первом параметре.
Допустим, плагин добавил новое мета поле: » twitter » и значение этого поля «wordpress», тогда код:
Источник