WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru
функция не описана

WP_REST_Templates_Controller::delete_item() public WP 5.8.0

Deletes a single template.

{} Это метод класса: WP_REST_Templates_Controller{}

Хуков нет.

Возвращает

WP_REST_Response|WP_Error. Response object on success, or WP_Error object on failure.

Использование

$WP_REST_Templates_Controller = new WP_REST_Templates_Controller();
$WP_REST_Templates_Controller->delete_item( $request );
$request(WP_REST_Request) (обязательный)
Full details about the request.

Список изменений

С версии 5.8.0 Введена.

Код WP_REST_Templates_Controller::delete_item() WP 5.8.1

public function delete_item( $request ) {
	$template = get_block_template( $request['id'], $this->post_type );
	if ( ! $template ) {
		return new WP_Error( 'rest_template_not_found', __( 'No templates exist with that id.' ), array( 'status' => 404 ) );
	}
	if ( 'custom' !== $template->source ) {
		return new WP_Error( 'rest_invalid_template', __( 'Templates based on theme files can\'t be removed.' ), array( 'status' => 400 ) );
	}

	$id    = $template->wp_id;
	$force = (bool) $request['force'];

	// If we're forcing, then delete permanently.
	if ( $force ) {
		$previous = $this->prepare_item_for_response( $template, $request );
		wp_delete_post( $id, true );
		$response = new WP_REST_Response();
		$response->set_data(
			array(
				'deleted'  => true,
				'previous' => $previous->get_data(),
			)
		);

		return $response;
	}

	// Otherwise, only trash if we haven't already.
	if ( 'trash' === $template->status ) {
		return new WP_Error(
			'rest_template_already_trashed',
			__( 'The template has already been deleted.' ),
			array( 'status' => 410 )
		);
	}

	wp_trash_post( $id );
	$template->status = 'trash';
	return $this->prepare_item_for_response( $template, $request );
}