# delete_option()

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

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

## Сигнатура

```php
delete_option( string $option ): bool
```

## Описание

Удаляет опцию по имени. Предотвращает удаление защищённых опций WordPress.

## Параметры

- `$option` `string` — обязательный. Имя удаляемой опции. Ожидается, что не экранировано для SQL.

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

`bool`

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

Файл: `wp-includes/option.php:1199`

```php
function delete_option( $option ) {
	global $wpdb;

	if ( is_scalar( $option ) ) {
		$option = trim( $option );
	}

	if ( empty( $option ) ) {
		return false;
	}

	wp_protect_special_option( $option );

	// Get the ID, if no ID then return.
	$row = $wpdb->get_row( $wpdb->prepare( "SELECT autoload FROM $wpdb->options WHERE option_name = %s", $option ) );
	if ( is_null( $row ) ) {
		return false;
	}

	/**
	 * Fires immediately before an option is deleted.
	 *
	 * @since 2.9.0
	 *
	 * @param string $option Name of the option to delete.
	 */
	do_action( 'delete_option', $option );

	$result = $wpdb->delete( $wpdb->options, array( 'option_name' => $option ) );

	if ( ! wp_installing() ) {
		if ( in_array( $row->autoload, wp_autoload_values_to_autoload(), true ) ) {
			$alloptions = wp_load_alloptions( true );

			if ( is_array( $alloptions ) && isset( $alloptions[ $option ] ) ) {
				unset( $alloptions[ $option ] );
				wp_cache_set( 'alloptions', $alloptions, 'options' );
			}
		} else {
			wp_cache_delete( $option, 'options' );
		}

		$notoptions = wp_cache_get( 'notoptions', 'options' );

		if ( ! is_array( $notoptions ) ) {
			$notoptions = array();
		}
		$notoptions[ $option ] = true;

		wp_cache_set( 'notoptions', $notoptions, 'options' );
	}

	if ( $result ) {

		/**
		 * Fires after a specific option has been deleted.
		 *
		 * The dynamic portion of the hook name, `$option`, refers to the option name.
		 *
		 * @since 3.0.0
		 *
		 * @param string $option Name of the deleted option.
		 */
		do_action( "delete_option_{$option}", $option );

		/**
		 * Fires after an option has been deleted.
		 *
		 * @since 2.9.0
		 *
		 * @param string $option Name of the deleted option.
		 */
		do_action( 'deleted_option', $option );

		return true;
	}

	return false;
}
```

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

- 1.2.0 — Introduced.

## Связанные

Использует: [`wp_autoload_values_to_autoload`](https://chugunov.pro/api-wordpress/functions/wp_autoload_values_to_autoload/), [`wp_installing`](https://chugunov.pro/api-wordpress/functions/wp_installing/), [`wp_cache_set`](https://chugunov.pro/api-wordpress/functions/wp_cache_set/), [`wp_cache_delete`](https://chugunov.pro/api-wordpress/functions/wp_cache_delete/), [`wp_load_alloptions`](https://chugunov.pro/api-wordpress/functions/wp_load_alloptions/), [`wp_protect_special_option`](https://chugunov.pro/api-wordpress/functions/wp_protect_special_option/), `wpdb::get_row`, `wpdb::delete`, [`wp_cache_get`](https://chugunov.pro/api-wordpress/functions/wp_cache_get/), [`do_action`](https://chugunov.pro/api-wordpress/functions/do_action/), `wpdb::prepare`.
Используется в: [`wp_update_https_migration_required`](https://chugunov.pro/api-wordpress/functions/wp_update_https_migration_required/), [`_wp_batch_update_comment_type`](https://chugunov.pro/api-wordpress/functions/_wp_batch_update_comment_type/), `WP_Recovery_Mode_Email_Service::clear_rate_limit`, `WP_Paused_Extensions_Storage::delete`, `WP_Paused_Extensions_Storage::delete_all`, [`clean_taxonomy_cache`](https://chugunov.pro/api-wordpress/functions/clean_taxonomy_cache/), [`_wp_menus_changed`](https://chugunov.pro/api-wordpress/functions/_wp_menus_changed/), `WP_REST_Settings_Controller::update_item`, `WP_Upgrader::release_lock`, [`delete_network_option`](https://chugunov.pro/api-wordpress/functions/delete_network_option/), [`_wp_batch_split_terms`](https://chugunov.pro/api-wordpress/functions/_wp_batch_split_terms/), `WP_Site_Icon::delete_attachment_data`, [`update_home_siteurl`](https://chugunov.pro/api-wordpress/functions/update_home_siteurl/), [`populate_options`](https://chugunov.pro/api-wordpress/functions/populate_options/), [`update_core`](https://chugunov.pro/api-wordpress/functions/update_core/), [`_delete_attachment_theme_mod`](https://chugunov.pro/api-wordpress/functions/_delete_attachment_theme_mod/), [`remove_theme_mods`](https://chugunov.pro/api-wordpress/functions/remove_theme_mods/), [`switch_theme`](https://chugunov.pro/api-wordpress/functions/switch_theme/), [`get_theme_mods`](https://chugunov.pro/api-wordpress/functions/get_theme_mods/), `WP_Theme::get_allowed_on_site`, [`get_transient`](https://chugunov.pro/api-wordpress/functions/get_transient/), [`set_transient`](https://chugunov.pro/api-wordpress/functions/set_transient/), [`delete_transient`](https://chugunov.pro/api-wordpress/functions/delete_transient/), [`_wp_upgrade_revisions_of_post`](https://chugunov.pro/api-wordpress/functions/_wp_upgrade_revisions_of_post/), [`maybe_add_existing_user_to_blog`](https://chugunov.pro/api-wordpress/functions/maybe_add_existing_user_to_blog/), [`delete_blog_option`](https://chugunov.pro/api-wordpress/functions/delete_blog_option/), `WP_Widget::get_settings`.

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