# _make_cat_compat()

URL: https://chugunov.pro/api-wordpress/functions/_make_cat_compat/
Проверено на WordPress 6.9, обновлено 06.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией WordPress.

Тип: функция.
Появился в версии: 2.3.0.

## Сигнатура

```php
_make_cat_compat( array|object|WP_Term $category )
```

## Описание

Эта функция была добавлена для поддержки таксономии, чтобы обновлять новую структуру рубрики старой. Это сохраняет совместимость с плагинами и темами, зависящими от старых имён ключей или свойств.
В параметр следует передавать только переменную, а не создавать массив или объект прямо в параметре. Причина в том, что параметр передаётся по ссылке, и PHP выдаст ошибку, если переменной нет.
Возвращаемого значения нет, потому что всё обновляется в переданной вами переменной. Это одна из особенностей передачи по ссылке в PHP.

## Параметры

- `$category` `array|object|WP_Term` — обязательный. Объект строки рубрики или массив.

## Исходный код

Файл: `wp-includes/category.php:378`

```php
function _make_cat_compat( &$category ) {
	if ( is_object( $category ) && ! is_wp_error( $category ) ) {
		$category->cat_ID               = $category->term_id;
		$category->category_count       = $category->count;
		$category->category_description = $category->description;
		$category->cat_name             = $category->name;
		$category->category_nicename    = $category->slug;
		$category->category_parent      = $category->parent;
	} elseif ( is_array( $category ) && isset( $category['term_id'] ) ) {
		$category['cat_ID']               = &$category['term_id'];
		$category['category_count']       = &$category['count'];
		$category['category_description'] = &$category['description'];
		$category['cat_name']             = &$category['name'];
		$category['category_nicename']    = &$category['slug'];
		$category['category_parent']      = &$category['parent'];
	}
}
```

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

- 4.4.0 — The $category parameter now also accepts a WP_Term object.
- 2.3.0 — Introduced.

## Связанные

Использует: [`is_wp_error`](https://chugunov.pro/api-wordpress/functions/is_wp_error/).
Используется в: [`get_category_to_edit`](https://chugunov.pro/api-wordpress/functions/get_category_to_edit/), [`wp_update_category`](https://chugunov.pro/api-wordpress/functions/wp_update_category/), [`wp_insert_category`](https://chugunov.pro/api-wordpress/functions/wp_insert_category/), [`get_the_category`](https://chugunov.pro/api-wordpress/functions/get_the_category/), `WP_Query::get_queried_object`, [`get_categories`](https://chugunov.pro/api-wordpress/functions/get_categories/), [`get_category`](https://chugunov.pro/api-wordpress/functions/get_category/), [`get_category_by_path`](https://chugunov.pro/api-wordpress/functions/get_category_by_path/), [`get_category_by_slug`](https://chugunov.pro/api-wordpress/functions/get_category_by_slug/).

Оригинал в официальной документации: https://developer.wordpress.org/reference/functions/_make_cat_compat/
