# wp_die()

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

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

## Сигнатура

```php
wp_die( string|WP_Error $message = '', string|int $title = '', string|array|int $args = array() ): never|void
```

## Описание

Эта функция дополняет PHP-функцию die(). Отличие в том, что пользователю выводится HTML. Использовать её рекомендуется только тогда, когда выполнение не должно продолжаться дальше. Не рекомендуется вызывать эту функцию слишком часто; старайтесь обрабатывать как можно больше ошибок незаметно или более аккуратно.
Для краткости нужный код HTTP-ответа можно передать целым числом в параметр $title (тогда применяется заголовок по умолчанию) или в параметр $args.

## Параметры

- `$message` `string|WP_Error` — необязательный, по умолчанию `''`. Сообщение об ошибке. Если это объект WP_Error и запрос не является Ajax или XML-RPC, используются сообщения из ошибки.
- `$title` `string|int` — необязательный, по умолчанию `''`. Заголовок ошибки. Если $message является объектом WP_Error, для указания заголовка могут использоваться данные ошибки с ключом 'title'.
  
  Если $title — целое число, оно трактуется как код ответа.
- `$args` `string|array|int` — необязательный, по умолчанию `array()`. Аргументы, управляющие поведением. Если $args — целое число, оно трактуется как код ответа.
  
  response intКод HTTP-ответа. Значение по умолчанию 200 для Ajax-запросов, иначе 500.
  
  link_url stringURL для ссылки. Работает только в сочетании с $link_text.
  
  link_text stringТекст добавляемой ссылки. Работает только в сочетании с $link_url.
  
  back_link boolДобавлять ли ссылку для возврата назад. Значение по умолчанию false.
  
  text_direction stringНаправление текста. Полезно только внутренне, когда WordPress ещё загружается и локаль сайта не настроена. Принимает 'rtl' и 'ltr'.
  
  Значение по умолчанию — значение is_rtl().
  
  charset stringКодировка HTML-вывода. Значение по умолчанию 'utf-8'.
  
  code stringИспользуемый код ошибки. Значение по умолчанию 'wp_die' или основной код ошибки, если $message является WP_Error.
  
  exit boolЗавершать ли процесс после выполнения. Значение по умолчанию true.

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

`never|void` — $args['exit']

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

Файл: `wp-includes/functions.php:3781`

```php
function wp_die( $message = '', $title = '', $args = array() ) {
	global $wp_query;

	if ( is_int( $args ) ) {
		$args = array( 'response' => $args );
	} elseif ( is_int( $title ) ) {
		$args  = array( 'response' => $title );
		$title = '';
	}

	if ( wp_doing_ajax() ) {
		/**
		 * Filters the callback for killing WordPress execution for Ajax requests.
		 *
		 * @since 3.4.0
		 *
		 * @param callable $callback Callback function name.
		 */
		$callback = apply_filters( 'wp_die_ajax_handler', '_ajax_wp_die_handler' );
	} elseif ( wp_is_json_request() ) {
		/**
		 * Filters the callback for killing WordPress execution for JSON requests.
		 *
		 * @since 5.1.0
		 *
		 * @param callable $callback Callback function name.
		 */
		$callback = apply_filters( 'wp_die_json_handler', '_json_wp_die_handler' );
	} elseif ( wp_is_serving_rest_request() && wp_is_jsonp_request() ) {
		/**
		 * Filters the callback for killing WordPress execution for JSONP REST requests.
		 *
		 * @since 5.2.0
		 *
		 * @param callable $callback Callback function name.
		 */
		$callback = apply_filters( 'wp_die_jsonp_handler', '_jsonp_wp_die_handler' );
	} elseif ( defined( 'XMLRPC_REQUEST' ) && XMLRPC_REQUEST ) {
		/**
		 * Filters the callback for killing WordPress execution for XML-RPC requests.
		 *
		 * @since 3.4.0
		 *
		 * @param callable $callback Callback function name.
		 */
		$callback = apply_filters( 'wp_die_xmlrpc_handler', '_xmlrpc_wp_die_handler' );
	} elseif ( wp_is_xml_request()
		|| isset( $wp_query ) &&
			( function_exists( 'is_feed' ) && is_feed()
			|| function_exists( 'is_comment_feed' ) && is_comment_feed()
			|| function_exists( 'is_trackback' ) && is_trackback() ) ) {
		/**
		 * Filters the callback for killing WordPress execution for XML requests.
		 *
		 * @since 5.2.0
		 *
		 * @param callable $callback Callback function name.
		 */
		$callback = apply_filters( 'wp_die_xml_handler', '_xml_wp_die_handler' );
	} else {
		/**
		 * Filters the callback for killing WordPress execution for all non-Ajax, non-JSON, non-XML requests.
		 *
		 * @since 3.0.0
		 *
		 * @param callable $callback Callback function name.
		 */
		$callback = apply_filters( 'wp_die_handler', '_default_wp_die_handler' );
	}

	call_user_func( $callback, $message, $title, $args );
}
```

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

- 5.5.0 — The $text_direction argument has a priority over get_language_attributes() in the default handler.
- 5.3.0 — The $charset argument was added.
- 5.1.0 — The $link_url, $link_text, and $exit arguments were added.
- 4.1.0 — The $title and $args parameters were changed to optionally accept an integer to be used as the response code.
- 2.0.4 — Introduced.

## Связанные

Использует: [`wp_is_serving_rest_request`](https://chugunov.pro/api-wordpress/functions/wp_is_serving_rest_request/), [`wp_is_jsonp_request`](https://chugunov.pro/api-wordpress/functions/wp_is_jsonp_request/), [`wp_is_xml_request`](https://chugunov.pro/api-wordpress/functions/wp_is_xml_request/), [`wp_is_json_request`](https://chugunov.pro/api-wordpress/functions/wp_is_json_request/), [`wp_doing_ajax`](https://chugunov.pro/api-wordpress/functions/wp_doing_ajax/), [`is_trackback`](https://chugunov.pro/api-wordpress/functions/is_trackback/), [`is_feed`](https://chugunov.pro/api-wordpress/functions/is_feed/), [`is_comment_feed`](https://chugunov.pro/api-wordpress/functions/is_comment_feed/), [`apply_filters`](https://chugunov.pro/api-wordpress/functions/apply_filters/).
Используется в: [`wp_ensure_editable_role`](https://chugunov.pro/api-wordpress/functions/wp_ensure_editable_role/), `WP_Sitemaps_Renderer::check_for_simple_xml_availability`, `WP_Recovery_Mode::handle_exit_recovery_mode`, `WP_Recovery_Mode::handle_cookie`, `WP_Recovery_Mode_Link_Service::handle_begin_link`, `WP_Fatal_Error_Handler::display_default_error_template`, `WP_Customize_Manager::handle_load_themes_request`, [`wp_load_press_this`](https://chugunov.pro/api-wordpress/functions/wp_load_press_this/), [`wp_check_comment_flood`](https://chugunov.pro/api-wordpress/functions/wp_check_comment_flood/), [`wp_ajax_get_post_thumbnail_html`](https://chugunov.pro/api-wordpress/functions/wp_ajax_get_post_thumbnail_html/), [`rest_api_loaded`](https://chugunov.pro/api-wordpress/functions/rest_api_loaded/), [`wp_ajax_delete_inactive_widgets`](https://chugunov.pro/api-wordpress/functions/wp_ajax_delete_inactive_widgets/), `WP_Customize_Nav_Menus::ajax_load_available_items`, `WP_Customize_Nav_Menus::ajax_search_available_items`, [`wp_media_attach_action`](https://chugunov.pro/api-wordpress/functions/wp_media_attach_action/), `File_Upload_Upgrader::__construct`, `WP_Screen::get`, [`install_theme_information`](https://chugunov.pro/api-wordpress/functions/install_theme_information/), [`_access_denied_splash`](https://chugunov.pro/api-wordpress/functions/_access_denied_splash/), [`check_upload_size`](https://chugunov.pro/api-wordpress/functions/check_upload_size/), `WP_Theme_Install_List_Table::prepare_items`, [`install_plugin_information`](https://chugunov.pro/api-wordpress/functions/install_plugin_information/), [`wp_check_mysql_version`](https://chugunov.pro/api-wordpress/functions/wp_check_mysql_version/), [`edit_user`](https://chugunov.pro/api-wordpress/functions/edit_user/), [`post_preview`](https://chugunov.pro/api-wordpress/functions/post_preview/), [`write_post`](https://chugunov.pro/api-wordpress/functions/write_post/), [`wp_write_post`](https://chugunov.pro/api-wordpress/functions/wp_write_post/), [`edit_post`](https://chugunov.pro/api-wordpress/functions/edit_post/), [`bulk_edit_posts`](https://chugunov.pro/api-wordpress/functions/bulk_edit_posts/), [`get_default_post_to_edit`](https://chugunov.pro/api-wordpress/functions/get_default_post_to_edit/), [`wp_ajax_save_widget`](https://chugunov.pro/api-wordpress/functions/wp_ajax_save_widget/), [`wp_ajax_upload_attachment`](https://chugunov.pro/api-wordpress/functions/wp_ajax_upload_attachment/), [`wp_ajax_image_editor`](https://chugunov.pro/api-wordpress/functions/wp_ajax_image_editor/), [`wp_ajax_set_post_thumbnail`](https://chugunov.pro/api-wordpress/functions/wp_ajax_set_post_thumbnail/), [`wp_ajax_date_format`](https://chugunov.pro/api-wordpress/functions/wp_ajax_date_format/), [`wp_ajax_time_format`](https://chugunov.pro/api-wordpress/functions/wp_ajax_time_format/), [`wp_ajax_wp_remove_post_lock`](https://chugunov.pro/api-wordpress/functions/wp_ajax_wp_remove_post_lock/), [`wp_ajax_dismiss_wp_pointer`](https://chugunov.pro/api-wordpress/functions/wp_ajax_dismiss_wp_pointer/), [`wp_ajax_add_menu_item`](https://chugunov.pro/api-wordpress/functions/wp_ajax_add_menu_item/), [`wp_ajax_add_meta`](https://chugunov.pro/api-wordpress/functions/wp_ajax_add_meta/).

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