web-dev-qa-db-ja.com

Multisiteで新しいサイトにプラグイン設定を継承する

WP Multisiteには Breadcrumb NavXT プラグインを使用します。私は私のネットワーク全体でそれを使用できるように私はすべてのサイトのためのプラグインを有効にしました。

私の問題は、新しいサイトを追加するたびにプラグインのデフォルト設定を変更しなければならないことですが、WPはメインサイト用にすでにカスタマイズした設定を使用したいと思います。彼らは同じだろう。

WPにメインサイトのプラグイン設定を強制的に採用させる方法はありますか?

5
user1706680

いい質問ですね。

しかし、私は質問者のために、そして読者のためにプラグインオプション名を見つけるという仕事を任せます。

これはwp_optionsテーブルの単一/直列化値に依存するすべてのプラグイン/テーマに使用できます。それが単一の値ではない場合、それは別の作業です...

この例では、 WP-Pagenavioption_nameを使用しています。

wp-pagenavi option name

ファイルwpmu_create_blogの関数/wp-includes/ms-functions.php内にアクションフックが見つかりました。

add_action( 'wpmu_new_blog', 'wpse_70977_copy_main_site_options', 10, 6 );

function wpse_70977_copy_main_site_options( $blog_id, $user_id, $domain, $path, $site_id, $meta )
{
    $mainsite = get_option( 'pagenavi_options' );
    switch_to_blog( $blog_id );
    update_option( 'pagenavi_options', $mainsite );
    restore_current_blog();
}

このコードは、サイトごとにプラグインをアクティブにし、ネットワークアクティブになっているプラ​​グインでテストされています。

4
brasofilo