J'ai un menu personnalisé appelé "Pied de page", le nom lisible par machine est "menu-footer". Et je veux remplacer la fonction theme_menu_tree() pour le menu. Mon nom de thème est "abc", donc j'ai essayé abc_menu_tree__menu_footer() et ça ne marche pas. Mais modifier abc_menu_tree() fonctionne, il doit donc s'agir de la substitution de menus personnalisés. J'ai vérifié cette Question mais cela ne fonctionne pas. Y a-t-il quelque chose que je dois faire pour autoriser le remplacement des menus personnalisés?YOUR_THEMENAME_menu_tree__YOUR_MENUNAME ne fonctionne pas
Merci pour votre aide à l'avance.
Edit:
Le code de la fonction:
function abc_menu_tree__menu_footer($variables) {
return '<nav class="sub-navigation"><ul>' . $variables['tree'] . '</ul></nav>';
}
abc_menu_link__menu_footer() ne peut pas être surchargée aussi. Dans abc_menu_link(), vous pouvez vérifier le contexte, ce n'est donc pas un gros problème. Si je vérifie si le thème de l'élément est "menu_link__menu_footer" il fonctionne pour les liens du menu.
Edit2:
Je ne peux pas passer outre abc_menu_tree pour le menu principal aussi. abc_menu_tree__main_menu ne fonctionne pas.
Etrange parce que cette même fonction fonctionne pour moi pour 4 menu personnalisé dans template.php dans le même format. Pouvez-vous s'il vous plaît poster toute la fonction ici? – RajeevK
Avez-vous vidé le cache du site après avoir déclaré la nouvelle fonction dans le fichier 'template.php' du thème?! –
J'ai rincé les caches dans les paramètres de performance et ajouté le code et les infos supplémentaires à ma question. Merci pour vos réponses! ;) – Abenil