get_category()

Извлекает данные категории по ее идентификатору или объекту категории
Функция WordPress
INT 1.5.1
WordPress Icon
Содержание
  1. Описание функции
  2. Примеры использования
  3. Получение данных о категории по ID
  4. Извлечение данных о категории по объекту
  5. Получение данных о категории в виде ассоциативного массива
  6. Получение данных о категории в виде числового массива
  7. Получение данных о категории с санитизацией полей
  8. Получение данных о несуществующей категории
  9. Вопросы и ответы
  10. Как получить данные категории по ее ID?
  11. Как получить данные категории в виде объекта?
  12. Как получить данные категории в виде ассоциативного массива?
  13. Как получить данные категории в виде числового массива?
  14. Что возвращает функция get_category() при отсутствии категории?
  15. Как санитизировать поля категории при использовании функции get_category()?
  16. Какие типы возвращаемых данных можно указать в параметре $output функции get_category()?
  17. Какие значения может принимать параметр $filter функции get_category()?
  18. Связанные элементы

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

Функция get_category() используется для получения данных о категории по ее идентификатору или объекту категории.

Функция принимает идентификатор категории или объект категории и возвращает данные о категории в указанном формате.

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

get_category( int|object $category, string $output = OBJECT, string $filter = 'raw' ): object|array|WP_Error|null

Функция get_category() принимает следующие параметры:

  • $category (обязательный) — идентификатор категории или объект категории.
  • $output (необязательный) — требуемый тип возвращаемого значения. Один из OBJECT, ARRAY_A или ARRAY_N, соответствующих объекту WP_Term, ассоциативному массиву или числовому массиву соответственно. По умолчанию: OBJECT.
  • $filter (необязательный) — способ санитизации полей категории. По умолчанию ‘raw’.

Функция get_category() возвращает данные о категории в формате, определенном параметром $output. Возможные значения возвращаемого значения: объект, массив или WP_Error. Если категория не существует, возвращается значение null.


$category_id = 5; // идентификатор категории
// Получение данных о категории в виде объекта
$category_object = get_category( $category_id );
if ( ! is_wp_error( $category_object ) ) {
    // Доступ к свойствам объекта категории
    $category_name = $category_object->name;
    $category_slug = $category_object->slug;
    $category_description = $category_object->description;
}
// Получение данных о категории в виде ассоциативного массива
$category_array = get_category( $category_id, 'ARRAY_A' );
if ( ! is_wp_error( $category_array ) ) {
    // Доступ к элементам массива категории
    $category_name = $category_array['name'];
    $category_slug = $category_array['slug'];
    $category_description = $category_array['description'];
}
// Получение данных о категории в виде числового массива
$category_array_numeric = get_category( $category_id, 'ARRAY_N' );
if ( ! is_wp_error( $category_array_numeric ) ) {
    // Доступ к элементам числового массива категории
    $category_name = $category_array_numeric[0];
    $category_slug = $category_array_numeric[1];
    $category_description = $category_array_numeric[2];
}

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

Получение данных о категории по ID


$category_id = 5;
$category = get_category($category_id);
if ( ! empty( $category ) ) {
    // Действия, если категория существует
    echo 'Название категории: ' . $category->name;
    echo 'Описание категории: ' . $category->description;
} else {
    // Действия, если категория не существует
    echo 'Категория не найдена.';
}

Извлечение данных о категории по объекту


$category_object = get_category( $category_id );
if ( ! is_wp_error( $category_object ) ) {
    // Действия, если объект категории получен успешно
    echo 'Название категории: ' . $category_object->name;
    echo 'Описание категории: ' . $category_object->description;
} else {
    // Действия, если произошла ошибка при получении объекта категории
    echo 'Ошибка при получении объекта категории: ' . $category_object->get_error_message();
}

Получение данных о категории в виде ассоциативного массива


$category_array = get_category( $category_id, 'ARRAY_A' );
if ( ! is_wp_error( $category_array ) ) {
    // Действия, если массив категории получен успешно
    echo 'Название категории: ' . $category_array['name'];
    echo 'Описание категории: ' . $category_array['description'];
} else {
    // Действия, если произошла ошибка при получении массива категории
    echo 'Ошибка при получении массива категории: ' . $category_array->get_error_message();
}

Получение данных о категории в виде числового массива


$category_array_numeric = get_category( $category_id, 'ARRAY_N' );
if ( ! is_wp_error( $category_array_numeric ) ) {
    // Действия, если числовой массив категории получен успешно
    echo 'Название категории: ' . $category_array_numeric[1];
    echo 'Описание категории: ' . $category_array_numeric[2];
} else {
    // Действия, если произошла ошибка при получении числового массива категории
    echo 'Ошибка при получении числового массива категории: ' . $category_array_numeric->get_error_message();
}

Получение данных о категории с санитизацией полей


$category_sanitized = get_category( $category_id, 'OBJECT', 'edit' );
if ( ! is_wp_error( $category_sanitized ) ) {
    // Действия, если санитизированный объект категории получен успешно
    echo 'Название категории: ' . $category_sanitized->name;
    echo 'Описание категории: ' . $category_sanitized->description;
} else {
    // Действия, если произошла ошибка при получении санитизированного объекта категории
    echo 'Ошибка при получении санитизированного объекта категории: ' . $category_sanitized->get_error_message();
}

Получение данных о несуществующей категории


$non_existing_category_id = 10;
$non_existing_category = get_category( $non_existing_category_id );
if ( ! empty( $non_existing_category ) ) {
    // Действия, если категория существует
    echo 'Название категории: ' . $non_existing_category->name;
    echo 'Описание категории: ' . $non_existing_category->description;
} else {
    // Действия, если категория не существует
    echo 'Категория не найдена.';
}

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

Как получить данные категории по ее ID?

Функция get_category() позволяет получить данные категории по ее ID. Для этого необходимо передать ID категории в качестве аргумента функции.

$category_id = 5;
$category = get_category( $category_id );

Как получить данные категории в виде объекта?

По умолчанию, функция get_category() возвращает данные категории в виде объекта класса WP_Term. Для получения данных категории в виде объекта, необходимо вызвать функцию без указания второго аргумента.

$category_id = 5;
$category = get_category( $category_id );

Как получить данные категории в виде ассоциативного массива?

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

$category_id = 5;
$category = get_category( $category_id, 'ARRAY_A' );

Как получить данные категории в виде числового массива?

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

$category_id = 5;
$category = get_category( $category_id, 'ARRAY_N' );

Что возвращает функция get_category() при отсутствии категории?

Функция get_category() возвращает объект WP_Error, если не указана категория или она не существует.


$category = get_category(9999);
if ( is_wp_error( $category ) ) {
    echo $category->get_error_message();
}

Как санитизировать поля категории при использовании функции get_category()?

При использовании функции get_category() можно указать параметр $filter со значением ‘raw’, чтобы не санитизировать поля категории.


$category = get_category(1, OBJECT, 'raw');

Какие типы возвращаемых данных можно указать в параметре $output функции get_category()?

В параметре $output функции get_category() можно указать тип возвращаемых данных: OBJECT (WP_Term object), ARRAY_A (associative array) или ARRAY_N (numeric array).


$category = get_category(1, 'ARRAY_A');

Какие значения может принимать параметр $filter функции get_category()?

Параметр $filter функции get_category() может принимать значения ‘raw’ (не санитизировать поля категории) или ‘display’ (санитизировать поля категории).


$category = get_category(1, OBJECT, 'display');

Функция get_category() позволяет получить данные о категории по ее ID или объекту категории. Она возвращает объект, массив или WP_Error в зависимости от указанных параметров. При отсутствии категории возвращается WP_Error. При использовании функции можно указать тип возвращаемых данных и способ санитизации полей категории.

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

  • Функция get_category_by_slug(): Возвращает объект категории, найденный по его слагу.
  • Функция get_category_by_path(): Возвращает объект категории, найденный по его пути.
  • Функция get_category_link(): Возвращает URL категории.
  • Функция get_category_parents(): Возвращает список родительских категорий для указанной категории.
  • Функция get_category_template(): Возвращает путь к шаблону категории.
  • Функция get_categories(): Возвращает массив объектов всех категорий.
  • Функция get_the_category(): Возвращает массив объектов категорий для текущего поста.
  • Функция get_the_category_list(): Возвращает HTML-список категорий для текущего поста.
Обсуждение