# sanitize_term()

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

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

## Сигнатура

```php
sanitize_term( array|object $term, string $taxonomy, string $context = 'display' ): array|object
```

## Описание

Опирается на sanitize_term_field() для очистки термина. Отличие в том, что эта функция очищает все поля. Контекст основан на sanitize_term_field() .
$term должен быть либо массивом, либо объектом.

## Параметры

- `$term` `array|object` — обязательный. Термин для проверки.
- `$taxonomy` `string` — обязательный. Имя используемой таксономии.
- `$context` `string` — необязательный, по умолчанию `'display'`. Контекст, в котором очищается термин.
  
  Принимает 'raw', 'edit', 'db', 'display', 'rss', 'attribute' или 'js'. Значение по умолчанию 'display'.

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

`array|object`

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

Файл: `wp-includes/taxonomy.php:1721`

```php
function sanitize_term( $term, $taxonomy, $context = 'display' ) {
	$fields = array( 'term_id', 'name', 'description', 'slug', 'count', 'parent', 'term_group', 'term_taxonomy_id', 'object_id' );

	$do_object = is_object( $term );

	$term_id = $do_object ? ( $term->term_id ?? 0 ) : ( $term['term_id'] ?? 0 );

	foreach ( (array) $fields as $field ) {
		if ( $do_object ) {
			if ( isset( $term->$field ) ) {
				$term->$field = sanitize_term_field( $field, $term->$field, $term_id, $taxonomy, $context );
			}
		} else {
			if ( isset( $term[ $field ] ) ) {
				$term[ $field ] = sanitize_term_field( $field, $term[ $field ], $term_id, $taxonomy, $context );
			}
		}
	}

	if ( $do_object ) {
		$term->filter = $context;
	} else {
		$term['filter'] = $context;
	}

	return $term;
}
```

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

- 2.3.0 — Introduced.

## Связанные

Использует: [`sanitize_term_field`](https://chugunov.pro/api-wordpress/functions/sanitize_term_field/).
Используется в: `WP_Term::filter`, `WP_Term::__get`, `WP_Term::get_instance`, `WP_Term`, `WP_Terms_List_Table::single_row`, [`sanitize_category`](https://chugunov.pro/api-wordpress/functions/sanitize_category/), [`wp_update_term`](https://chugunov.pro/api-wordpress/functions/wp_update_term/), [`wp_insert_term`](https://chugunov.pro/api-wordpress/functions/wp_insert_term/), [`get_term_to_edit`](https://chugunov.pro/api-wordpress/functions/get_term_to_edit/), [`get_term`](https://chugunov.pro/api-wordpress/functions/get_term/).

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