説明
get_transient() は、一時的に保存したデータ(トランジェント)を取得する関数です。有効期限が切れていれば false を返します。
基本構文
get_transient( string $transient ): mixed
引数
$transient:トランジェント名
戻り値
保存した値。存在しない・期限切れなら false。
使い方(サンプル)
$data = get_transient( 'my_api_cache' );
if ( false === $data ) {
// 取得し直して保存
}
注意点
- 保存した値自体が
falseの場合と区別がつかないため、厳密比較(false ===)で判定します。 - オブジェクトキャッシュが有効な環境では、データベースではなくメモリに保存されます。
実務での使いどころ
- 外部APIの結果や、重い処理の結果を、一時的に保存して使い回すとき。
- 有効期限つきで、データをキャッシュするとき。
よくあるミスと対処
- 保存されていない、または期限切れのときは
falseが返る。保存した値がfalseだと区別できない。===で比べる。 - トランジェントは、期限前でも消える場合がある。消えても動くように、作り直す処理を用意する。
- 外部の応答などを、保存せずに毎回取得している。
NG例
$data = get_transient( 'my_data' );
echo $data['title']; // 無い場合に、エラーになる
OK例
$data = get_transient( 'my_data' );
if ( false === $data ) {
$data = my_fetch_data();
set_transient( 'my_data', $data, HOUR_IN_SECONDS );
}
使い分け早見表
| 関数 | 役割 |
|---|---|
get_transient() |
保存した値を取得する |
set_transient() |
有効期限つきで保存する |
delete_transient() |
削除する |
関連項目
set_transient()、delete_transient()
公式リファレンス:get_transient() | Function | WordPress Developer Resources

コメント