J'ai un menu WordPress qui comporte quelques éléments de menu que j'ai ajoutés via la fonction de menu d'administration WordPress standard (glisser-déposer). Récemment, j'ai dû ajouter un autre élément au menu qui génère un lien href dynamique. J'ai réalisé qu'en utilisant le code suivant dans mon fichier functions.php:Ajout d'un élément de menu personnalisé au menu WordPress
// ajouter mon élément de menu profil dynmacially au menu membres (générer nom d'utilisateur en fonction de l'utilisateur actuel connecté)
add_filter ('wp_nav_menu_items', 'add_profilelink_in_menu', 10, 2);
fonction add_profilelink_in_menu (articles $, $ args) {
if($args->theme_location == 'secondary') { global $current_user; //converts user id to username $user_info = get_userdata($current_user->ID); $items .='<li id="menu-item-2091" class="menu-item menu-item-2091"> <a href="https://www.mysite.com/members/' . $user_info->user_login .'">Profile</a> </li>'; } return $items;
}
Mon problème est que cet élément de menu est ajouté à la fin du menu et les classes de menu de WordPress réguliers tels en tant que 'current-menu-item' ne s'applique pas à cet élément. Existe-t-il un moyen de contrôler la position d'ajout de cet élément de menu (par exemple: ajouter cet élément après les deux premiers éléments?)
et comment puis-je obtenir WordPress pour traiter cet élément de menu généré dynamiquement un élément de menu régulier et l'ajouter toutes les classes qu'il ajoute les autres éléments de menu (créé à travers la fonctionnalité de menu WordPress)?
Merci pour toute aide.
voulez-vous essayer jquery? – loQ
oui je voudrais s'il vous plaît – Dmitri