wp_maybe_clean_new_site_cache_on_update()


WordPressのwp_maybe_clean_new_site_cache_on_update()関数は、マルチサイト環境で新しいサイトが追加または更新された際にキャッシュをクリーンアップするために使用されます。

構文

wp_maybe_clean_new_site_cache_on_update( int $blog_id );
  • $blog_id (int) — キャッシュをクリーンアップする対象のブログID。

例1: 新しいサイト作成時にキャッシュをクリア

新しいサイトが追加された際に自動的にキャッシュをクリアします。

add_action( 'wp_insert_site', function( $new_site ) { wp_maybe_clean_new_site_cache_on_update( $new_site->blog_id ); } );

例2: サイト更新時に手動でキャッシュクリア

特定のサイトが更新された際に手動でキャッシュをクリアします。

wp_maybe_clean_new_site_cache_on_update( get_current_blog_id() );

例3: 複数サイトのキャッシュクリア

複数のサイトIDを指定して一括でキャッシュをクリアします。

foreach( [1, 2, 3] as $blog_id ) { wp_maybe_clean_new_site_cache_on_update( $blog_id ); }

例4: サイト削除時のキャッシュクリア

サイトが削除された際にキャッシュをクリアします。

add_action( 'delete_blog', function( $blog_id ) { wp_maybe_clean_new_site_cache_on_update( $blog_id ); } );

例5: スイッチサイト時のキャッシュクリア

サイトを切り替えた際にキャッシュをクリアします。

add_action( 'switch_blog', 'wp_maybe_clean_new_site_cache_on_update' );

例6: カスタムフックでの使用

カスタムフックと組み合わせて使用します。

do_action( 'custom_cache_clean', function( $id ) { wp_maybe_clean_new_site_cache_on_update( $id ); } );

例7: 条件付きキャッシュクリア

特定の条件下でのみキャッシュをクリアします。

if( get_blog_option( $blog_id, 'needs_cache_clear' ) ) { wp_maybe_clean_new_site_cache_on_update( $blog_id ); }

注意事項

  • この関数はマルチサイト環境でのみ有効です。
  • 頻繁なキャッシュクリアはパフォーマンスに影響する可能性があります。
  • 適切なフックポイントで使用してください。

関連機能: