- wp_create_user - создаёт нового пользователя
- wp_update_user - обновляет данные существующего пользователя
- wp_insert_user - создаёт пользователя, если его ещё нет, или обновляет данные существующего
Создание пользователя "wp_create_user"
Функция "wp_create_user" принимает три аргумента:$user_id = wp_create_user( $login, $pass, $email );
Первый аргумент "$login" (является строкой) - это логин пользователя. Второй параметр "$pass" является паролем, а третий "$email" - это почтовый адрес пользователя. Все аргументы кроме "$email" являются обязательными для создания пользователя.Функция возвращает ID добавленного пользователя или объект "WP_Error" в случае ошибки. Внутри объекта "WP_Error" могут содержаться следующие коды ошибок:
- empty_user_login - не указан логин нового пользователя
- existing_user_login - пользователь с таким логином уже существует
- existing_user_email - пользователь с таким почтовым адресом уже сущесвтует
$user_id = wp_create_user( 'mouse', 'cheese', 'support@mousedc.ru' );
if( !is_wp_error( $user_id ) ) {
echo 'Пользователь успешно создан. Его id=' . $user_id;
} else {
echo $user_id->get_error_message();
}
Обновление данных пользователя "wp_update_user"
Функция "wp_update_user" позволяет изменять данные у уже существующего пользователя. Функция принимает только один аргумент - массив из данных, которые нужно обновить:$user_id = wp_update_user( $data );
В случае успешного обновления пользователя будет возвращён его ID. Иначе объект "WP_Error". Приведём пример её использования:
$data = array(
'ID' => 1, // ID пользователя, данные которого обновляются.
'first_name' => 'Имя',
'last_name' => 'Фамилия'
);
$user_id = wp_update_user( $data );
if( !is_wp_error( $user_id ) ) {
echo 'Данные пользователя c id=' . $user_id . ' успешно изменены.';
} else {
echo $user_id->get_error_message();
}
Разберём все возможные ключи массива первого аргумента:
Название | тип | описание |
---|---|---|
ID | число | ID пользователя. |
user_pass | строка | Пароль пользователя. |
user_login | строка | Логин пользователя. |
user_nicename | строка | Имя пользователя. Совпадает с логином, если не указано. |
user_url | строка | Адрес сайта |
user_email | строка | Почтовый адрес (мэйл). |
display_name | строка | Отображаемое имя. Совпадает с логином, если не указано. |
nickname | строка | Ник. Совпадает с логином, если не указано. |
first_name | строка | Имя. |
last_name | строка | Фамилия. |
description | строка | Поле "немного о себе". |
rich_editing | строка/ логический | Использовать ли визуальный редактор. По умолчанию "true" - использовать |
syntax_highlighting | строка/ логический | Включить ли подсветку синтаксиса для визуального редактора. |
comment_shortcuts | строка/ логический | Использовать ли клавиши модерации комментариев. По умолчанию "false" - отключено |
admin_color | строка | Особый цвет панели администрирования. По умолчанию: "fresh" |
use_ssl | строка/ логический | Заставлять ли пользователя использовать только защищённое соединение при авторизации (https). По умолчанию "false" - не заставлять |
user_registered | строка | Дата регистрации в формате "Y-m-d H:i:s". Если не указать, то будет использована текущая дата (по Гринвичу). |
show_admin_bar_front | строка | Показывать ли бар администратора (полоска сверху). По умолчанию "true" - показывать |
role | строка | Роль пользователя. |
locale | строка | Язык пользователя. К примеру: "ru_RU". По умолчанию пустое значение |
Обновление или добавление пользователя "wp_insert_user"
Функция "wp_insert_user" умеет и добавлять, и обновлять данные пользователей. Она принимает только один аргумент - массив параметров, которые нужно обновить (см. таблицу из предыдущего абзаца):wp_insert_user( $data );
Если в массиве "$data" передать ключ "ID", то пользователь будет обновлён. Если не передать, то будет создан новый пользователь.
В случае успешного обновления или добавления пользователя функция возвращает ID. Если в процессе работы функции произошла ошибка, то вернётся объект "WP_Error".