add_user_meta()

Добавляет метаданные к пользователю
Функция WordPress
INT 3.0.0
WordPress Icon

Описание функции

Функция add_user_meta() используется для добавления метаданных к пользователю в WordPress. Метаданные представляют собой дополнительную информацию, которую можно связать с определенным пользователем. Эта функция позволяет сохранять дополнительные данные, которые не входят в стандартные поля пользователя.

Использование

add_user_meta( int $user_id, string $meta_key, mixed $meta_value, bool $unique = false ): int|false

Функция add_user_meta() принимает четыре параметра: $user_id, $meta_key, $meta_value и $unique. Она добавляет метаданные к пользователю с указанным $user_id. Параметр $meta_key представляет собой имя метаданных, а $meta_value — значение метаданных. Параметр $unique определяет, должен ли быть уникальный ключ метаданных. По умолчанию он равен false.

  • $user_id (int) — Обязательный. Идентификатор пользователя.
  • $meta_key (string) — Обязательный. Имя метаданных.
  • $meta_value (mixed) — Обязательный. Значение метаданных. Должно быть сериализуемым, если не является скалярным.
  • $unique (bool) — Опционально. Определяет, должен ли быть уникальный ключ метаданных. По умолчанию: false.

Функция add_user_meta() возвращает идентификатор метаданных (Meta ID) в случае успеха и false в случае ошибки.

<?php
/**
 * Пример использования функции add_user_meta()
 */
$user_id = 123; // Идентификатор пользователя
$meta_key = 'phone_number'; // Имя метаданных
$meta_value = '555-1234'; // Значение метаданных
// Добавление метаданных к пользователю
$meta_id = add_user_meta( $user_id, $meta_key, $meta_value );
if ( $meta_id ) {
    echo 'Метаданные успешно добавлены!';
} else {
    echo 'Ошибка при добавлении метаданных.';
}
?>

В этом примере мы добавляем метаданные с именем «phone_number» и значением «555-1234» к пользователю с идентификатором 123. Функция add_user_meta() возвращает идентификатор метаданных (Meta ID), который мы сохраняем в переменной $meta_id. Затем мы проверяем, успешно ли добавлены метаданные, и выводим соответствующее сообщение.

Примеры использования

Добавление метаданных пользователя


/**
 * Добавляет метаданные к пользователю.
 *
 * @param int    $user_id    Идентификатор пользователя.
 * @param string $meta_key   Название метаданных.
 * @param mixed  $meta_value Значение метаданных. Должно быть сериализуемым, если не скалярное.
 * @param bool   $unique     Опционально. Указывает, что одинаковый ключ не должен быть добавлен. По умолчанию: false.
 *
 * @return int|false Идентификатор метаданных при успехе, false при ошибке.
 */
add_user_meta( $user_id, $meta_key, $meta_value, $unique );

Изменение метаданных пользователя


/**
 * Изменяет метаданные пользователя.
 *
 * @param int    $user_id    Идентификатор пользователя.
 * @param string $meta_key   Название метаданных.
 * @param mixed  $meta_value Значение метаданных. Должно быть сериализуемым, если не скалярное.
 * @param mixed  $prev_value Опционально. Предыдущее значение метаданных.
 *
 * @return bool True при успехе, false при ошибке.
 */
update_user_meta( $user_id, $meta_key, $meta_value, $prev_value );

Удаление метаданных пользователя


/**
 * Удаляет метаданные пользователя.
 *
 * @param int    $user_id  Идентификатор пользователя.
 * @param string $meta_key Название метаданных.
 * @param mixed  $meta_value Опционально. Значение метаданных.
 *
 * @return bool True при успехе, false при ошибке.
 */
delete_user_meta( $user_id, $meta_key, $meta_value );

Получение метаданных пользователя


/**
 * Получает метаданные пользователя.
 *
 * @param int    $user_id  Идентификатор пользователя.
 * @param string $meta_key Опционально. Название метаданных.
 * @param bool   $single   Опционально. Указывает, нужно ли вернуть одно значение или массив значений. По умолчанию: false.
 *
 * @return mixed Значение метаданных или массив значений при успехе, false при ошибке.
 */
get_user_meta( $user_id, $meta_key, $single );

Вопросы и ответы

Как добавить мета-данные пользователю?

Функция add_user_meta() позволяет добавить мета-данные к пользователю в WordPress. Для этого необходимо передать следующие параметры:

  • $user_id — идентификатор пользователя, к которому добавляются мета-данные.
  • $meta_key — название мета-данных.
  • $meta_value — значение мета-данных. Оно должно быть сериализуемым, если не является скалярным.
  • $unique (необязательный) — указывает, должно ли быть добавлено только уникальное значение для данного ключа. По умолчанию равно false.

Функция возвращает идентификатор мета-данных в случае успешного добавления или false в случае ошибки.


$user_id = 123;
$meta_key = 'favorite_color';
$meta_value = 'blue';
$result = add_user_meta( $user_id, $meta_key, $meta_value );
if ( $result ) {
  echo 'Мета-данные успешно добавлены!';
} else {
  echo 'Ошибка при добавлении мета-данных.';
}

Как получить значение мета-данных пользователя?

Для получения значения мета-данных пользователя используется функция get_user_meta(). Она принимает два обязательных параметра:

  • $user_id — идентификатор пользователя, чьи мета-данные необходимо получить.
  • $meta_key — название мета-данных.

Функция возвращает массив значений мета-данных или пустой массив, если мета-данные не найдены.


$user_id = 123;
$meta_key = 'favorite_color';
$meta_values = get_user_meta( $user_id, $meta_key );
if ( $meta_values ) {
  echo 'Значение мета-данных: ' . $meta_values[0];
} else {
  echo 'Мета-данные не найдены.';
}

Как обновить значение мета-данных пользователя?

Для обновления значения мета-данных пользователя используется функция update_user_meta(). Она принимает те же параметры, что и функция add_user_meta().


$user_id = 123;
$meta_key = 'favorite_color';
$meta_value = 'green';
$result = update_user_meta( $user_id, $meta_key, $meta_value );
if ( $result ) {
  echo 'Значение мета-данных успешно обновлено!';
} else {
  echo 'Ошибка при обновлении мета-данных.';
}

Как удалить мета-данные пользователя?

Для удаления мета-данных пользователя используется функция delete_user_meta(). Она принимает те же параметры, что и функции add_user_meta() и update_user_meta().


$user_id = 123;
$meta_key = 'favorite_color';
$result = delete_user_meta( $user_id, $meta_key );
if ( $result ) {
  echo 'Мета-данные успешно удалены!';
} else {
  echo 'Ошибка при удалении мета-данных.';
}

Как проверить существование мета-данных пользователя?

Для проверки существования мета-данных пользователя в WordPress можно использовать функцию get_user_meta(). Она возвращает значение мета-данных пользователя по указанному ключу.


$user_id = 123;
$meta_key = 'my_meta_key';
if (get_user_meta($user_id, $meta_key, true)) {
    // Мета-данные существуют
} else {
    // Мета-данные отсутствуют
}

Как добавить уникальные мета-данные пользователя?

Для добавления уникальных мета-данных пользователя в WordPress используется функция add_user_meta(). Она добавляет новую запись мета-данных пользователя с указанным ключом и значением.


$user_id = 123;
$meta_key = 'my_meta_key';
$meta_value = 'my_meta_value';
if (!get_user_meta($user_id, $meta_key)) {
    add_user_meta($user_id, $meta_key, $meta_value, true);
}

Как добавить мета-данные пользователю без сериализации?

Функция add_user_meta() автоматически сериализует значения мета-данных, если они не являются скалярными. Если вы хотите сохранить мета-данные без сериализации, можно использовать функцию update_user_meta().


$user_id = 123;
$meta_key = 'my_meta_key';
$meta_value = 'my_meta_value';
update_user_meta($user_id, $meta_key, $meta_value);

Как использовать функцию add_user_meta() в темах?

Функция add_user_meta() может быть использована в темах WordPress для добавления дополнительных мета-данных пользователя. Например, вы можете использовать ее для сохранения настроек пользовательского профиля или для добавления дополнительной информации о пользователе.


$user_id = get_current_user_id();
$meta_key = 'my_meta_key';
$meta_value = 'my_meta_value';
add_user_meta($user_id, $meta_key, $meta_value);

Функция add_user_meta() в WordPress позволяет добавлять мета-данные пользователю. Она предоставляет удобные возможности для работы с дополнительной информацией о пользователях, таких как сохранение настроек или добавление дополнительных полей в профиль. Используйте эту функцию с параметром $unique, чтобы добавить уникальные мета-данные, и функцию get_user_meta(), чтобы проверить существование мета-данных. Также, вы можете использовать функцию update_user_meta(), чтобы добавить мета-данные без сериализации. Все эти возможности делают функцию add_user_meta() полезным инструментом для разработчиков WordPress.

Связанные элементы

  • Функция update_user_meta(): обновляет значение метаданных пользователя.
  • Функция delete_user_meta(): удаляет метаданные пользователя.
  • Функция get_user_meta(): получает значение метаданных пользователя.
Обсуждение