wp_uninitialize_site()


WordPressのwp_uninitialize_site()関数は、サイトの初期化を解除するために使用されます。マルチサイト環境で特定のサイトを削除またはリセットする際に利用されます。

構文

wp_uninitialize_site( int $site_id );
  • $site_id(int)—初期化を解除するサイトのID。

例1:基本的なサイトの初期化解除

指定したサイトIDの初期化を解除します。

wp_uninitialize_site( get_current_blog_id() );

例2:存在しないサイトの初期化解除を試みる

無効なサイトIDを指定した場合の動作を示します。

wp_uninitialize_site( 9999 );

例3:ループ内での複数サイトの初期化解除

複数のサイトを一括で初期化解除します。

foreach( get_sites() as $site ) { wp_uninitialize_site( $site->blog_id ); }

例4:権限チェック後に初期化解除

管理者権限がある場合のみサイトを初期化解除します。

if( current_user_can( 'manage_network' ) ) { wp_uninitialize_site( 2 ); }

例5:エラーハンドリング付きの初期化解除

初期化解除の結果をチェックします。

$result = wp_uninitialize_site( 3 ); if( is_wp_error( $result ) ) { error_log( $result->get_error_message() ); }

例6:フックを使用したカスタム処理

初期化解除前にカスタムアクションを実行します。

add_action( 'wp_uninitialize_site', function( $id ) { /* カスタムコード */ } ); wp_uninitialize_site( 4 );

例7:特定のサイトタイプのみ初期化解除

条件に合致するサイトのみ初期化解除します。

if( get_blog_option( 5, 'site_type' ) === 'temporary' ) { wp_uninitialize_site( 5 ); }

注意事項

  • この関数はマルチサイト環境でのみ使用可能です。
  • サイトの初期化解除は元に戻せない操作です。
  • 重要なデータは事前にバックアップしてください。

関連機能: