# wp_trash_post_comments()

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

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

## Сигнатура

```php
wp_trash_post_comments( int|WP_Post|null $post = null ): mixed|void
```

## Описание

Перемещает комментарии записи в Корзину.

## Параметры

- `$post` `int|WP_Post|null` — необязательный, по умолчанию `null`. Идентификатор записи или объект записи. По умолчанию — глобальная переменная $post.

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

`mixed|void`

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

Файл: `wp-includes/post.php:4190`

```php
function wp_trash_post_comments( $post = null ) {
	global $wpdb;

	$post = get_post( $post );

	if ( ! $post ) {
		return;
	}

	$post_id = $post->ID;

	/**
	 * Fires before comments are sent to the Trash.
	 *
	 * @since 2.9.0
	 *
	 * @param int $post_id Post ID.
	 */
	do_action( 'trash_post_comments', $post_id );

	$comments = $wpdb->get_results( $wpdb->prepare( "SELECT comment_ID, comment_approved FROM $wpdb->comments WHERE comment_post_ID = %d", $post_id ) );

	if ( ! $comments ) {
		return;
	}

	// Cache current status for each comment.
	$statuses = array();
	foreach ( $comments as $comment ) {
		$statuses[ $comment->comment_ID ] = $comment->comment_approved;
	}
	add_post_meta( $post_id, '_wp_trash_meta_comments_status', $statuses );

	// Set status for all comments to post-trashed.
	$result = $wpdb->update( $wpdb->comments, array( 'comment_approved' => 'post-trashed' ), array( 'comment_post_ID' => $post_id ) );

	clean_comment_cache( array_keys( $statuses ) );

	/**
	 * Fires after comments are sent to the Trash.
	 *
	 * @since 2.9.0
	 *
	 * @param int   $post_id  Post ID.
	 * @param array $statuses Array of comment statuses.
	 */
	do_action( 'trashed_post_comments', $post_id, $statuses );

	return $result;
}
```

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

- 2.9.0 — Introduced.

## Связанные

Использует: [`add_post_meta`](https://chugunov.pro/api-wordpress/functions/add_post_meta/), `wpdb::update`, [`clean_comment_cache`](https://chugunov.pro/api-wordpress/functions/clean_comment_cache/), [`do_action`](https://chugunov.pro/api-wordpress/functions/do_action/), [`get_post`](https://chugunov.pro/api-wordpress/functions/get_post/), `wpdb::get_results`, `wpdb::prepare`.
Используется в: `WP_Customize_Manager::trash_changeset_post`, [`wp_trash_post`](https://chugunov.pro/api-wordpress/functions/wp_trash_post/).

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