WP ajoute un logo au centre du menu tout en ignorant les sous-menus?

En utilisant le formulaire jQuery suivant, je peux centrer dynamicment un logo au milieu d’un menu wordpress, mais lorsque j’ajoute un sous-menu à la navigation principale, le logo disparaît. Comment pourrais-je réécrire ceci pour réduire les sous-menus?

JQuery:

var position = $("ul#main_nav li").length-2; var i = 0; $('ul#main_nav li').each(function() { if(i == position/2) { $(this).after('<img src="https://stackoverflow.com/questions/39080069/wp-add-logo-into-center-of-menu-whist-ignoring-sub-menus//img/logo.png" alt="Logo" class="logo-img">'); } i++; }); 

HTML:

 
  • ITEM1
  • ITEM2
  • ITEM3
  • ITEM4
  • ITEM5
  • ITEM6

 var position = $("ul#main_nav > li").length-2; var i = 0; $('ul#main_nav li').each(function() { if(i == position/2) { $(this).after('Logo'); } i++; }); /* Try this */ 

Si, par hasard, quelqu’un d’autre découvre ce problème, voici la solution.

 var position = $("ul#main_nav li.menu-item-object-page").length-2; var i = 0; $('ul#main_nav li.menu-item-object-page).each(function() { if(i == position/2) { $(this).after('Logo'); } i++; }); 

WordPress atsortingbue aux éléments de liste de navigation de premier niveau la classe .menu-item-object-page mais ne l’applique pas aux éléments de sous-menu. Il est donc un peu plus précis de définir les éléments à cibler et d’obtenir le résultat souhaité.