Je suis donc en train de mettre à niveau un site plus ancien et je dois le rendre multisite également pour certains blogs et autres.
J'aimerais que le menu du site principal (créé à partir de l'admin) soit disponible de manière élégante sur les autres sites. C'est-à-dire que chaque site a un thème et ce serait bien si je pouvais simplement wp_nav_menu () sur chaque site.
Des idées?
J'ai jeté un coup d'oeil à switch_to_blog () mais je vois que c'est obsolète.
À votre santé!
C'est ce que j'ai utilisé récemment. C'est très simple mais cela fonctionne bien pour moi.
function wp_multisite_nav_menu( $args = array(), $Origin_id = 1 ) {
global $blog_id;
$Origin_id = absint( $Origin_id );
if ( !is_multisite() || $Origin_id == $blog_id ) {
wp_nav_menu( $args );
return;
}
switch_to_blog( $Origin_id );
wp_nav_menu( $args );
restore_current_blog();
}
J'ai jeté cela dans un fichier mu-plugin qui héberge un grand nombre de petits crochets et de fonctions destinées à fonctionner à l'échelle du réseau.
Je dirais: écrivez un court plug-in qui offre une fonction simple permettant d'afficher un menu. Puis activez-le sur tout le réseau.