Функция GET_TAXONOMY() в WordPress: описание, синтаксис, примеры

# Функция GET_TAXONOMY() в WordPress

Функция get_taxonomy() получает объект с настройками (данными) определённой таксономии.

Обратите внимание, что эта функция возвращает не список терминов таксономии, а именно её данные. Чтобы получить список терминов, используйте функции get_terms() или wp_list_categories().

Функция get_taxonomy сначала проверяет, является ли указанный параметр строкой, относящейся к таксономии. Если да, то она возвращает соответствующий объект.

### Используется в

- wp_nav_menu_item_taxonomy_meta_box()
- is_taxonomy_hierarchical()

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

- 1 раз — 0.000009 сек
- 50000 раз — 0.01 сек

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

Функция возвращает объект таксономии (WP_Taxonomy) или false, если указанный параметр $taxonomy не существует.

### Синтаксис использования

```php
get_taxonomy( $taxonomy );
  • $taxonomy (строка) (обязательно) — название таксономии, данные которой нужно вернуть.

Примеры

Пример 1: Получение данных таксономии "категория"

Чтобы продемонстрировать работу функции, получим данные таксономии "category", которая связана с типом поста "post":

$category_tax_features = get_taxonomy('category');

print_r( $category_tax_features );

Вывод:

stdClass Object (
    [labels] => stdClass Object (
        [name]                       => Categories
        [singular_name]              => Category
        [search_items]               => Search Categories
        [popular_items]              => 
        [all_items]                  => All Categories
        [parent_item]                => Parent Category
        [parent_item_colon]          => Parent Category:
        [edit_item]                  => Edit Category
        [view_item]                  => View Category
        [update_item]                => Update Category
        [add_new_item]               => Add New Category
        [new_item_name]              => New Category Name
        [separate_items_with_commas] => 
        [add_or_remove_items]        => 
        [choose_from_most_used]      => 
        [not_found]                  => 
        [menu_name]                  => Categories
        [name_admin_bar]             => category
    )
    [description]       => 
    [public]            => 1
    [hierarchical]      => 1
    [show_ui]           => 1
    [show_in_menu]      => 1
    [show_in_nav_menus] => 1
    [show_tagcloud]     => 1
    [meta_box_cb]       => post_categories_meta_box
    [rewrite]           => Array (
        [with_front]   => 
        [hierarchical] => 1
        [ep_mask]      => 512
        [slug]         => cat
    )
    [query_var]             => category_name
    [update_count_callback] => 
    [_builtin]              => 1
    [show_admin_column]     => 1
    [cap]                   => stdClass Object (
        [manage_terms] => manage_categories
        [edit_terms]   => manage_categories
        [delete_terms] => manage_categories
        [assign_terms] => edit_posts
    )
    [name] => category
    [object_type] => Array (
        [0] => post
    )
    [label] => Categories
)

Примечания

  • Глобальная переменная: $wp_taxonomies — зарегистрированные таксономии.

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

  • С версии 2.3.0 — введена функция.

Исходный код функции

Функция get_taxonomy() находится в файле wp-includes/taxonomy.php. Ниже приведён её упрощённый код:

function get_taxonomy( $taxonomy ) {
    global $wp_taxonomies;

    if ( ! taxonomy_exists( $taxonomy ) ) {
        return false;
    }

    return $wp_taxonomies[ $taxonomy ];
}

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

  • edit_term_link()
  • get_edit_term_link()
  • get_taxonomies()
  • get_term()
  • get_term_by()
  • get_term_children()
  • get_term_field()
  • get_term_link()
  • get_terms()
  • is_taxonomy_hierarchical()
  • register_taxonomy()
  • register_taxonomy_for_object_type()
  • sanitize_term()
  • sanitize_term_field()
  • single_term_title()
  • taxonomy_exists()
  • term_description()
  • term_exists()
  • term_is_ancestor_of()
  • the_terms()
  • unregister_taxonomy()
  • unregister_taxonomy_for_object_type()
  • wp_count_terms()
  • wp_delete_term()
  • wp_get_term_taxonomy_parent_id()
  • wp_insert_term()
  • wp_update_term()
  • wp_update_term_count()

Leave a Reply

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