wpseo_on_activate_blog()


WordPress関数wpseo_on_activate_blog()は、サイトが有効化されたときにSEO関連の設定や初期化を行うために使用されます。

構文

wpseo_on_activate_blog();

この関数には引数を取りません。

例 1: サイト有効化時のSEO設定の初期化

サイト有効化時にYoast SEOプラグインの設定を初期化します。

<?php
wpseo_on_activate_blog();
?>

例 2: 新しいサイト作成時にカスタム設定を適用

マルチサイト環境で新しいサイトが作成された際に、カスタムSEO設定を追加します。

<?php
add_action( 'wp_initialize_site', function( $new_site ) {
    switch_to_blog( $new_site->blog_id );
    wpseo_on_activate_blog();
    restore_current_blog();
});
?>

例 3: サイトリストをループしてSEO設定を更新

マルチサイトのすべてのサイトにSEO設定を適用します。

<?php
$sites = get_sites();
foreach ( $sites as $site ) {
    switch_to_blog( $site->blog_id );
    wpseo_on_activate_blog();
    restore_current_blog();
}
?>

例 4: デフォルトカテゴリーのメタデータを更新

新しいサイトでデフォルトカテゴリーのSEOメタデータを自動的に設定します。

<?php
add_action( 'wp_initialize_site', function( $new_site ) {
    switch_to_blog( $new_site->blog_id );
    wpseo_on_activate_blog();
    wp_update_term( 1, 'category', array(
        'meta_title' => 'デフォルトカテゴリー',
        'meta_description' => 'このカテゴリーの説明。',
    ));
    restore_current_blog();
});
?>

例 5: テーマのカスタムフックでSEO設定を有効化

テーマが切り替えられたときにSEO設定を再初期化します。

<?php
add_action( 'after_switch_theme', function() {
    wpseo_on_activate_blog();
});
?>

注意事項

マルチサイト環境では、切り替え先のブログIDに注意してください。
既存の設定を上書きしないよう、事前にバックアップを取得することをお勧めします。