set_transient

説明

bool set_transient( string $transient, mixed $value [ , int $expiration = 0 ] )
トランジェントの値を設定する。

パラメータ

  • $transient
    トランジェント名(172文字以下)を指定。
  • $value
    保持する値を指定。
  • $expiration
    値を保持する秒数を指定(省略時は0)。

返り値

値を保持できた場合はtrueを、保持できなかった場合はfalseを返す。


注意

本関数は特定のデータを一時的または永続的に保持する。値の保持方法はサイトの環境に依存し、オブジェクトキャッシュ( wp_cache_set関数)かオプションテーブル( update_option関数など)が使用される。

パラメータ$transientはフィルター名やアクション名に使用され、WordPress本体が使用する名称と被らないように注意しなければならない。

配列やオブジェクトを保持する場合、パラメータ$valueにはシリアライズする必要はない。

保持期間を示すパラメータ$expirationは、"expiration_of_transient_{$transient}"フィルターを経て判定される(0の場合は永続的に保持)。


使用例

  • トランジェントの値を設定する。
    <?php set_transient( 'myplugin_data', $value ); ?>
  • 3時間保持するトランジェントの値を設定する。
    <?php set_transient( 'myplugin_data', $value, 3 * HOUR_IN_SECONDS ); ?>

フィルター

[3.0.0]はじめに"pre_set_transient_{$transient}"フィルターを呼び出す。パラメータ$valueには本関数が受け取った内容が格納されている。4.2.0以降は$expirationにはintでキャストした値が、4.4.0以降は$transienには本関数が受け取った内容が格納されている。
$value = apply_filters( "pre_set_transient_{$transient}", $value, $expiration, $transient );
[4.4.0]値を保持する前に"expiration_of_transient_{$transient}"フィルターを呼び出す。パラメータ$expirationにはintでキャストした値が、$valueには"pre_set_transient_{$transient}"フィルターの結果が、$transientには本関数が受け取った内容が格納されている。
$expiration = apply_filters( "expiration_of_transient_{$transient}", $expiration, $value, $transient );

アクション

[3.0.0]値を保持できた場合は"set_transient_{$transient}"アクションを呼び出す。パラメータ$valueには"pre_set_transient_{$transient}"フィルターの結果が格納される。3.6.0以降は$expirationには"expiration_of_transient_{$transient}"フィルターの結果が、4.4.0以降は$transienには本関数が受け取った内容が格納されている。
do_action( "set_transient_{$transient}", $value, $expiration, $transient );
[3.0.0]値を保持てきた場合は'setted_transient'アクションを呼び出す。パラメータ$transienには本関数が受け取った内容が格納されている。3.6.0以降は$valueには"pre_set_transient_{$transient}"フィルターの結果が、$expirationには"expiration_of_transient_{$transient}"フィルターの結果が格納されている。
do_action( 'setted_transient', $transient, $value, $expiration );

ソースファイル

/wp-includes/option.php

最終更新 : 2019年04月23日 14:56



お勧め

初期化に関連するアクションのおさらい(2013年11月27日 更新)

いつも何気なくfunctions.phpで使っているafter_setup_themeアクションやinitアクション。普段はあまり意識していなかったが、ふとしたことからどんな順番に呼び出されるのか気になってしまい、ちょっと調べてみた。

WP_List_Tableクラスを使ってみた(2018年5月27日 更新)

WordPressの管理画面ではデータを一覧表示しているページがいくつもある。今回この仕組みを自分のプラグインでも使ってみたいと思い、調査しながらプラグインに組み込んでみた。

投稿ページでユニークなテンプレートを選択しよう(2018年5月27日 更新)

4.7の変更点に「投稿タイプテンプレート」がある。これは従来固定ページ('page')向けに任意のテンプレートを適用できる機能が拡張されたもので、投稿ページ('post')はもちろんカスタム投稿タイプのページにも適用可能になっている。

常時SSL接続に変更しました(2018年5月27日 更新)

先週末、本サイトを常時SSL接続に変更しました。本サイトは「さくらのVPS」(CentOS 6系、Apache 2.2系)上にWordPressのマルチサイト機能を使って構築しており、無償で使用できる「Let's Encrypt」を使って常時SSL接続に切り替えた手順をメモとして残しそうと思います。

テキストエディタの文字を変更する(2018年5月27日 更新)

テキストエディタ(投稿ページの「テキスト」タブのエディタ)に標準では備わっていない機能を追加する自作プラグイン「html entities button」がほぼ1年ぶりにアップデート。ここではバージョン2.0.0で追加したテキストエディタのフォント切り替え機能について紹介する。