get_site_transient()
Получает значение временной опции главного сайта сети.
Если на сайте используется объектное кэширование, то временные опции будут получены из кэша, в противном случае данные берутся с помощью get_site_option() (см. логику работы в описании).
Используйте функцию get_transient(), когда нужно получить временную опцию текущего сайта, а не основного сайта сети.
Отличие get_transient() от get_site_transient() такое же как между get_option() и get_network_option().
Хуки из функции
Возвращает
Разное
.
-
false возвращается в следующих случаях:
- если временной опции не существует
- или она имеет пустое значение
- или она просрочена.
- В других случаях возвращает полученное значение опции.
Заметка: возвращаемый false нужно проверять тождественным равенством (===), а не обычным двойным равенством, потому что в значении опции может находится 0 или пустая строка, пустой массив. По этой же причине, не нужно сохранять в значение опции false, сохраняйте вместо этого 0 или поместите false в массив.
Использование
get_site_transient( $transient );
- $transient(строка) (обязательный)
- Название временной опции.
Примеры
#1 Пример использования
Допустим у нас есть данные, которые используются на всех сайтах сети. Эти данные нужно получать по HTTP запросу из другого сайта, поэтому этот запрос хорошо бы закэшировать. Для такой цели хорошо подойдет эта функцию. Ниже показана логика такого кода:
$transient = 'some_trans_name'; $remote_data = get_site_transient( $transient ); if( false === $remote_data ){ $remote_data = file_get_contents( 'http://dom.ru/promo/yith-promo.xml' ); } if( $remote_data ){ set_site_transient( $transient, $remote_data, WEEK_IN_SECONDS ); }
Заметки
- Смотрите: get_transient()
Список изменений
С версии 2.9.0 | Введена. |