web-dev-qa-db-fra.com

Création d'un nouveau menu dynamique comprenant des liens vers des partenaires

J'ai peut-être oublié quelque chose de fondamental, mais j'essaie d'inclure les divers éléments de menu dynamique inclus avec BuddyPress et d'autres modules complémentaires dans mon menu déroulant principal.

Par exemple, le thème Twenty Eleven WP a un en-tête de haut avec un menu déroulant sous cet en-tête. Ce menu peut être manipulé via l'option Apparence-> Menus de wp-admin. BuddyPress ajoute ses propres éléments de menu à la barre d'administration en haut de la page, mais n'inclut pas ces liens dans le menu déroulant situé sous l'en-tête. Je souhaite supprimer complètement la barre d'administration et déplacer tous les liens dynamiques dans le menu déroulant.

J'ai déjà créé un menu personnalisé dans le fichier functions.php:

function register_my_menus() {
  register_nav_menus(
  array( 
  'header-menu' => __( 'Nav Menu' )
  )
 );
}
add_action( 'init', 'register_my_menus' );

Et ce menu est chargé dans le header.php avec:

<?php wp_nav_menu( array( 'theme_location' => 'header-menu' ) ); ?>

Je suis en mesure d'ajouter des liens individuels à ce menu à l'aide de la fonction wp_nav_menu_items, mais il semble impossible de répliquer la structure de menu dynamique créée par la fonctionnalité bp_nav en fonction de l'utilisateur.

Quelqu'un a-t-il des idées sur la façon dont je pourrais déplacer cette fonctionnalité? Ou peut-être est-ce que je regarde mal la structure du menu?

3
CGAdmin

Bien que je n'ai pas de code spécifique à suggérer, il semble qu'il serait possible de créer quelque chose dans le sens que vous avez mentionné en utilisant un Nav Walker personnalisé et générer des liens spécifiques à buddypress avec le $bp global (dont vous pouvez en apprendre plus ici → http://codex.buddypress.org/developer/the-bp-global/ ).

Vous pouvez modifier $output dans Nav Walker personnalisé en fonction des vérifications effectuées par $bp, si elles existent.

1
George G.