http://wm-monitoring.ru/ ')) {alert('Спасибо за то что установили нашу кнопку! =)');} else {alert('Очень жаль! =(');}"> http://wm-monitoring.ru/

Главная Новости

Комментарии 1 — delete_expired_transients() — Удаляет все просроченные временные опции (транзитные опции). Функция WordPress.

Опубликовано: 01.09.2018

Удаляет все просроченные временные опции (транзитные опции).

Удаление временных опций позволит очистить таблицу опций в БД. Иногда плагины хранят данные во временных опциях, но не удаляют их и может случится так, что таких данных станет очень много.

Запуск этой функции не приносит сайту никакого вреда.

С версии WP 3.7 просроченные транзитные опции автоматически удаляются при обновлении WordPress (апгрейде базы данных WordPress).

Ничего не делает, если на сайте используется плагин объектного кэширования и параметр $force_db отключен.

О временных опциях читайте в описании функции set_transient() .

Хуков нет.

Возвращает

Ничего (null)

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

delete_expired_transients( $force_db = false ); $force_db(логический) Если установить в true, то временные опции будут принудительно удаляться из БД, даже если используется плагин объектного кэширования.

По умолчанию: false

Примеры

#1 Удалим все временные опции, время жизни которых истекло

delete_expired_transients( true );

Код delete expired transients : wp-includes/option.php VER 4.9.6

<?php function delete_expired_transients( $force_db = false ) { global $wpdb; if ( ! $force_db && wp_using_ext_object_cache() ) { return; } $wpdb->query( $wpdb->prepare( "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b WHERE a.option_name LIKE %s AND a.option_name NOT LIKE %s AND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) ) AND b.option_value < %d", $wpdb->esc_like( '_transient_' ) . '%', $wpdb->esc_like( '_transient_timeout_' ) . '%', time() ) ); if ( ! is_multisite() ) { // non-Multisite stores site transients in the options table. $wpdb->query( $wpdb->prepare( "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b WHERE a.option_name LIKE %s AND a.option_name NOT LIKE %s AND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) ) AND b.option_value < %d", $wpdb->esc_like( '_site_transient_' ) . '%', $wpdb->esc_like( '_site_transient_timeout_' ) . '%', time() ) ); } elseif ( is_multisite() && is_main_site() && is_main_network() ) { // Multisite stores site transients in the sitemeta table. $wpdb->query( $wpdb->prepare( "DELETE a, b FROM {$wpdb->sitemeta} a, {$wpdb->sitemeta} b WHERE a.meta_key LIKE %s AND a.meta_key NOT LIKE %s AND b.meta_key = CONCAT( '_site_transient_timeout_', SUBSTRING( a.meta_key, 17 ) ) AND b.meta_value < %d", $wpdb->esc_like( '_site_transient_' ) . '%', $wpdb->esc_like( '_site_transient_timeout_' ) . '%', time() ) ); } }

Cвязанные функции

Из раздела: Временные опции (transients)

Карта
rss