delete_transient() – удаляет значение из транзитного кэша

Функция возвращает true, если транзит был успешно удалён, в остальных случаях, например, если транзита с данным ключом не существует – false.

Про транзиты у меня на сайте есть отдельный урок с видео.

delete_transient( $transient )

Параметры функции delete_transient()

$transient
Ключ. По длине должен быть 175 символов или меньше, так как WordPress добавляет ещё префиксы _transient_ и _transient_timeout_ при сохранении их в таблицу опций в базе данных. Более длинные ключи будут фейлиться без каких-либо уведомлений или ошибок.

Пример

Предположим, что транзиты у вас задействованы где-то при выводе постов и их информации на сайте. Тогда при обновлении поста нам нужно очищать этот определённый транзит.

Это можно сделать при помощи хука save_post.

add_action( 'save_post', 'true_delete_some_transient' );
 
function true_delete_some_transient() {
 
	delete_transient( 'some_transient' );
 
}

delete_transient_{$transient}

Запускается непосредственно перед тем, как транзит с указанным ключом будет удалён.

add_action( 'delete_transient_some_transient', function( $transient ) {
	// делаем что-либо
} );

delete_transient

Запускается после успешного удаления любого транзита.

add_action( 'delete_transient', function( $transient ) {
 
	if( 'some_transient' === $transient ) {
		// делаем что-либо
	}
 
} );

Источник: Блог Миши Рудрастых

Миша Рудрастых

Путешествует по миру и рассказывает всем о WordPress лично, у себя в блогах и на курсах в Санкт-Петербурге. Умеет просто объяснять сложные вещи, делает это красиво. Организовывает неплохие WordCamp's, но совсем не умеет слушать чужие доклады.

Добавить комментарий

%d такие блоггеры, как: