populate_site_meta()


WordPressのpopulate_site_meta()関数は、サイトのメタデータを生成・更新するために使用されます。主にマルチサイト環境で利用され、サイトのキャッシュを更新する際に役立ちます。

構文

populate_site_meta( int $site_id, array $meta = array(), bool $update = false );

引数の説明:

  • $site_id (int) — メタデータを更新するサイトのID
  • $meta (array) — 追加または更新するメタデータの配列
  • $update (bool) — 既存のメタデータを更新する場合はtrue

例1: サイトメタデータの基本更新

指定したサイトIDのメタデータを更新します。

populate_site_meta(get_current_blog_id(),array('key'=>'value'));

例2: 複数メタデータの一括追加

配列を使用して複数のメタデータを追加します。

populate_site_meta(1,array('color'=>'red','size'=>'large'));

例3: 既存メタデータの上書き

第3引数をtrueに設定して既存メタデータを更新します。

populate_site_meta(1,array('color'=>'blue'),true);

例4: 新規サイト作成時のメタデータ設定

wp_insert_site()と組み合わせて使用します。

$site_id=wp_insert_site(array('domain'=>'example.com'));populate_site_meta($site_id,array('created'=>current_time('mysql')));

例5: メタデータの削除

空の配列を渡してメタデータを削除します。

populate_site_meta(1,array());

例6: 条件付きメタデータ更新

特定の条件が満たされた場合にのみメタデータを更新します。

if(!get_site_meta(get_current_blog_id(),'initialized',true)){populate_site_meta(get_current_blog_id(),array('initialized'=>true));}

例7: マルチサイト環境での一括更新

switch_to_blog()と組み合わせて使用します。

switch_to_blog(2);populate_site_meta(2,array('active'=>1));restore_current_blog();

注意事項

  • この関数はデータベースに直接書き込みます
  • マルチサイト環境でのみ有効です
  • 不適切な使用はサイトデータに影響する可能性があります

関連機能: