Проверка существования категории в WordPress │ WP 2.0.0

## Функция CATEGORY_EXISTS() │ WP 2.0.0

Функция проверяет, существует ли категория в WordPress.

### Время выполнения

- 1 раз: 0.0012069 сек (очень медленно)
- 50000 раз: 11.23 сек (медленно)

### Нет хуков

## Возвращаемое значение

Функция возвращает:
- ID категории как строку, если категория существует.
- null, если категория не найдена.

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

```php
category_exists( $cat_name, $category_parent );
  • $cat_name (int|string) — обязательный параметр. Название категории.
  • $category_parent (int) — ID родительской категории. Значение по умолчанию: null.

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

Пример 1: Проверка существования категории

Чтобы проверить, существует ли категория, выполните следующий код:

require_once ABSPATH . 'wp-admin/includes/taxonomy.php';

// Проверяем существование категории
$tag = category_exists( 'WordPress' );

if( $tag ){
    var_dump( $tag ); // Выведет ID категории
}

Если категория существует, то на экран выведется её ID.

Пример 2: Использование term_exists и category_exists

Функция category_exists() — это обертка для term_exists(), которая позволяет легче проверять наличие категорий:

$cat_name = 'Теги WordPress';

// Вариант 1
$id = category_exists( $cat_name );
print_r( $id ); // Выведет ID категории, например: 572

// Вариант 2
$id = term_exists( $cat_name, 'category' );

print_r( $id ); // Выведет массив: Array( [term_id] => 572 [term_taxonomy_id] => 572 )

if ( is_array( $id ) ) {
    $id = $id['term_id'];
}

print_r( $id ); // Выведет ID категории: 572

Примечания

  • Смотрите также: term_exists()

Изменения

  • С версии 2.0.0 — функция была внедрена.

Код функции CATEGORY_EXISTS()

Файл

wp-admin/includes/taxonomy.php

function category_exists( $cat_name, $category_parent = null ) {
    $id = term_exists( $cat_name, 'category', $category_parent );
    if ( is_array( $id ) ) {
        $id = $id['term_id'];
    }
    return $id;
}

Связанные функции

  • get_term()
  • get_term_by()
  • get_term_children()
  • get_term_field()
  • get_term_link()
  • get_terms()
  • get_the_term_list()
  • get_the_terms()
  • has_term()
  • is_object_in_term()
  • tag_exists()
  • the_terms()
  • wp_delete_object_term_relationships()
  • wp_delete_term()
  • wp_get_object_terms()
  • wp_get_term_taxonomy_parent_id()
  • wp_insert_category()
  • wp_insert_term()
  • wp_set_object_terms()
  • wp_set_post_terms()
  • WP_Tax_Query()
  • WP_Term()
  • WP_Term_Query()
  • wp_update_term()
  • wp_update_term_count()

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *