Chaque fois que je sélectionne une catégorie telle que utilisateurs/contenu, etc., dans la zone de l'administrateur, les sous-menus sont affichés 6 fois. Comme l'image ci-dessous pour les utilisateurs.
Debug: Modèle d’administrateur (hathor/index.php) Ligne 92:
<jdoc:include type="modules" name="submenu" style="rounded" id="submenu-box" />
var_dump("test");
C’est là que le mod_submenu
est inclus et que les sous-menus sont affichés.Après le var_dump
i n’obtient que n sortie (voulait tester si j’étais dans une boucle), donc je pensait que le problème se situerait à l'intérieur de mod_submenu
.
Bien que j'ai remarqué que tout le code de mod_submenu est exécuté à l'intérieur d'un
<ul id="submenu">
Mais la sortie après avoir inspecté la page est la suivante pour chaque ligne:
<div id="submenu-box">
<div class="m">
<ul id="submenu"></ul>
Si le mod_submenu a été exécuté 6 fois, j'aurais quelque chose comme ça pour la sortie:
<div id="submenu-box">
<div class="m">
<ul id="submenu"></ul>
<ul id="submenu"></ul>
<ul id="submenu"></ul>
etc..
Maintenant, la sortie est la suivante:
<div id="submenu-box">
<div class="m">
<ul id="submenu"></ul>
</div>
</div>
<div id="submenu-box">
<div class="m">
<ul id="submenu"></ul>
</div>
</div>
<div id="submenu-box">
<div class="m">
<ul id="submenu"></ul>
</div>
</div>
etc...
Donc, si je ne me trompe pas, <jdoc:include type="modules" name="submenu" style="rounded" id="submenu-box" />
crée à la fois <div id="submenu-box">
et <div class="m">
.
Après beaucoup de débogage, je suis arrivé à la conclusion que l'instruction include et seulement celle (le reste du code de hathor fonctionnant normalement) est exécutée 5 fois de plus.
J'ai pensé à me débarrasser des 5 divs supplémentaires en utilisant jQuery. Le problème est qu'il y a 6 divs avec le même identifiant. J'ai donc essayé de changer le id="submenu-box"
sur include en class="submenu-box"
. après avoir rafraîchi la page, au lieu d’avoir un <div class="submenu-box">
j’avais un <div>
vide. Puis-je utiliser une classe avec le jdoc:include
?
Est-ce que quelqu'un a déjà rencontré quelque chose comme ça auparavant? Ou quelqu'un a une idée de ce que pourrait être le problème? J'espère que j'ai été assez clair.
P.S: error_log est vide!
J'avais quelque chose comme ça dans le passé, parce que le module avait plus d'une instance dans la base de données.
Pourquoi ne pas vérifier dans Module Manager -> Modules d’administration, pour voir si vous avez le même module d’admin (sous-menu) plusieurs fois?
Si vous ne les voyez pas dans le gestionnaire de modules, envisagez de vérifier également directement dans la base de données.
Dans mon cas, ce qui a causé ce problème est une instruction SQL - correctif de base de données que je lance directement dans la base de données, après la mise à jour de Joomla qui pose des problèmes de structure de base de données et qui n'a pas pu être résolue avec la structure de schémas DB-> Fix dans le backend.
Bien que j'ai mis à jour les schémas de base de données Joomla, j'ai également dupliqué deux modules d'administration.