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 в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Если вам нужна помощь с сайтом или разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда будем рады вам помочь!

Оставить комментарий

Если вы хотите добавить код, не забудьте обернуть его в <pre lang="php"></pre>, если же код – меньше одной строчки, то можно и в <code></code>.