Получение родительских категорий в WordPress: функция `get_category_parents()`

## Получение родительских категорий с помощью функции get_category_parents()

Функция get_category_parents() используется в WordPress для получения списка родительских категорий с заданным разделителем. Это полезно, если вы хотите отобразить иерархию категорий на вашем сайте.

### Общая информация

- **Использует:** get_term_parents_list()
- **Возвращает:** строку с родительскими категориями при успешном выполнении или WP_Error в случае ошибки.

### Синтаксис

```php
get_category_parents( $category_id, $link, $separator, $nicename, $deprecated );

Параметры

  • $category_id (int, обязательный): ID категории, родительские категории которой необходимо получить.
  • $link (boolean): Форматировать результат как ссылки?
    • По умолчанию: false
  • $separator (string): Строка, используемая для разделения категорий.
    • По умолчанию: '/'
  • $nicename (boolean): Использовать "красивое" название для отображения?
    • По умолчанию: false
  • $deprecated (array): Этот параметр не используется.
    • По умолчанию: array()

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

Пример 1: Получение родительских категорий категории с ID 10

Мы можем отобразить родительские категории категории с ID 10 в виде ссылок, разделенных символом ».

Вывод:

Интернет » Блог » WordPress »

Пример 2: Получение верхнего родительского элемента для вложенного элемента

Если у нас есть вложенная категория, и мы хотим получить первую (корневую) родительскую категорию, мы используем следующую конструкцию. Это поможет нам узнать верхнюю категорию в иерархии.

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

Ход выполнения функции

Вот как выглядит внутренняя реализация функции get_category_parents():

function get_category_parents( $category_id, $link = false, $separator = '/', $nicename = false, $deprecated = array() ) {
    if ( ! empty( $deprecated ) ) {
        _deprecated_argument( __FUNCTION__, '4.8.0' );
    }

    $format = $nicename ? 'slug' : 'name';

    $args = array(
        'separator' => $separator,
        'link'      => $link,
        'format'    => $format,
    );

    return get_term_parents_list( $category_id, 'category', $args );
}

Изменения в истории версий

  • С 1.2.0: Функция была введена.
  • С 4.8.0: Параметр $visited был устаревшим и переименован в $deprecated.

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

Существует множество других функций, которые могут быть полезны при работе с категориями и таксономиями:

  • cat_is_ancestor_of()
  • get_adjacent_post()
  • get_ancestors()
  • get_next_post()
  • get_post_ancestors()
  • get_previous_post()
  • get_term_children()

Также стоит ознакомиться с функциями для работы с категориями:

  • category_description()
  • category_exists()
  • get_cat_ID()
  • get_cat_name()
  • get_categories()
  • get_category()
  • get_category_by_slug()
  • get_category_link()
  • get_the_category_by_ID()
  • in_category()
  • single_cat_title()
  • wp_create_category()
  • wp_dropdown_categories()
  • wp_insert_category()
  • wp_list_categories()

Эти функции помогут вам более эффективно управлять категориями на вашем сайте WordPress.

Leave a Reply

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