説明
clean_post_cache() は、投稿に関するキャッシュを削除する関数です。
基本構文
clean_post_cache( int|WP_Post $post ): void
引数
$post:投稿IDまたはオブジェクト
戻り値
戻り値はありません。
使い方(サンプル)
clean_post_cache( 123 );
注意点
- データベースを直接更新したあとなど、キャッシュを最新に保つために使います。
実務での使いどころ
- データベースの投稿を、SQLで直接更新したあとに、投稿のキャッシュを、消すとき。
よくあるミスと対処
- SQLで更新したあとに、キャッシュを消さない。
get_post()などが、古い値を返す。 wp_update_post()などを使っていれば、自動で呼ばれる。二重に呼ぶ必要はない。
NG例
$wpdb->update( $wpdb->posts, array( 'post_title' => '新' ), array( 'ID' => $id ) );
// キャッシュが残り、get_post() が古い値を返す
OK例
$wpdb->update( $wpdb->posts, array( 'post_title' => '新' ), array( 'ID' => $id ) );
clean_post_cache( $id );
使い分け早見表
| やりたいこと | 使うもの |
|---|---|
| 投稿のキャッシュを削除 | clean_post_cache() |
| 任意のキャッシュを削除 | wp_cache_delete() |
| 投稿を更新(キャッシュも自動で処理) | wp_update_post() |
関連項目
wp_cache_delete()、wp_update_post()
公式リファレンス:clean_post_cache() | Function | WordPress Developer Resources

コメント