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



お勧め

xmlrpc.phpへのアクセスについてちょっと考えた(2018年5月27日 更新)

少し前のことですが、こちらのサーバーを何度かダウンさせてしまったのですが、その原因はxmlrpc.phpへアクセスが集中したことによってサーバーが過負荷となってしまったというものでした。すぐにサーバー性能を上げることはできないため、xmlrpc.phpのアクセスを全部拒否するという暫定対応してしまいました。

開発環境(Windows 8)にimagickを入れる(2012年12月23日 更新)

WordPress 3.5のイメージエディタ(WP_Image_Editor)は、GDだけでなく、imagick(ImageMagick)にも対応している。そんなわけでWindows 8の開発環境にimagickをインストールしてみた。

Post-tag automaton:プラグイン作ってみました(2012年12月24日 更新)

みなさんは投稿をポストする際に投稿タグを付け忘れたことはないでしょうか。このプラグインは、投稿をポストする際にタイトルと記事に投稿タグが含まれていないか調べ、含まれていた場合はその投稿タグを追加します。

Blacklist keys manager:プラグイン作ってみました(2015年5月22日 更新)

少し前から明らかにスパムと思われるコメントが投稿され、そのモデレーションメールを受け取る回数が増えてきた。あまりにもあからさまなコメントばかりなので、何らかの対策ができないか考えてみました。

タイトルのみをキーワード検索する(2014年4月3日 更新)

WordPressのキーワード検索は、投稿タイトルと本文のどちらかに指定したキーワードが含まれているかを調べるわけだが、時々タイトルだけとか、逆に本文だけ検索したいケースがある。