WP:マルチサイトで共通カスタムメニュー

この記事は約2分で読めます。

WordPressでマルチサイト構築していますが、デフォルトだと、各サイトごとにメニューをカスタムしないといけない。大抵、すべてのページに共通のメニューを使いたいと思うので調べてみた。

<?php switch_to_blog(1);
wp_nav_menu(‘menu=topmenu’);
restore_current_blog(); ?>

 

 ナビメニューが入ってる部分の前後にswitch_to_blog(1);とrestore_current_blog();を追加したら、見事にすべての子サイトに親サイトのカスタムメニューが追加されてくれました♪これは非常に助かりました。
menu=***の中身は自分がつけたメニューの名前に書き換えます。

こちらのサイトを参考にさせていただきました。
——————-

(12/8後記)
その後、基本テンプレートをTwenty twelveに変えたんですが、ナビメニュー部分のスタイルシートが消えちゃってて、???になったんですが、元のほうを見ると、配列でスタイルシートが組み込まれてたので、同じスタイルを共通仕様のほうにも書いてやりました。

Twenty twelveのメニュー部分が

<?php wp_nav_menu( array( 'theme_location' => 'primary', 'menu_class' => 'nav-menu' ) );?>

なので、上のまんまだとスタイルシートが消えちゃいます。
Twenty twelveの基本を使って、

<?php switch_to_blog(1);
wp_nav_menu( array( 'menu=topmenu', 'menu_class' => 'nav-menu' ) );
restore_current_blog();?>

でスタイルシート復活。

タイトルとURLをコピーしました