Il y a quelques jours à peine, un de nos utilisateurs nous a signalé un problème inhabituel. Le problème était qu’il atteignait la limite des éléments de menu personnalisés. Tout ce qu’il enregistre après avoir atteint la limite des éléments de menu ne sera pas enregistré du tout. Nous n’avions jamais entendu parler de ce problème, nous avons donc décidé de l’essayer sur notre installation locale. Créé plus de 200 éléments de menu et enregistré. Cela a très bien fonctionné. Déplacement de 100 éléments dans une liste déroulante et cela a été parfaitement sauvegardé. À ce moment-là, nous savions que cela avait quelque chose à voir avec le serveur. Après des recherches plus poussées, il semblait que beaucoup d’autres avaient le même problème. En creusant un peu plus, on a trouvé un ticket de trac (#14134) qui a mis en évidence ce problème. Après avoir lu le très très long ticket de suivi, il semble que le problème n’ait pas encore été résolu, mais il existe une solution de contournement pour ceux qui ont ce problème. Dans cet article, nous allons vous montrer comment corriger la limite des éléments de menu personnalisés dans WordPress.
Pour résoudre le problème, vous devez modifier votre fichier PHP.ini. Si vous êtes sur un serveur dédié ou sur un VPS avec accès root, alors vous devez déjà savoir de quoi on parle. Si vous êtes sur un hébergement mutualisé ou si vous ne savez pas où se trouve le fichier PHP.ini, demandez à votre hébergeur de le faire pour vous.
Vous devez leur demander de définir les valeurs suivantes dans la configuration PHP.ini :
suhosin.post.max_vars = 5000 suhosin.request.max_vars = 5000
Un autre utilisateur « ronnieg » a posté un travail qu’il a pour son grand site et menu immobilier (plus de 450 pages et en croissance). Tu peux lire sa réponse à suivre. (Remarque: nous n’avons pas essayé celui-ci)
Explication du problème
Ce problème n’est pas entièrement basé sur WordPress car différentes personnes voient des limites différentes (certains disent 16 autres disent 50 et comme vous le savez déjà, nous sommes allés jusqu’à 200 sans voir aucune limite). En théorie, WordPress ne limite pas le nombre de menus que vous pouvez avoir. Votre serveur d’hébergement Web est. Il existe des limitations Suhosin sur les variables POST max, ce qui limite le grand nombre d’entrées enregistrées. Nacin a répondu dans le ticket de suivi pour dire que ce n’est PAS un bogue mais plutôt une amélioration. L’équipe principale doit trouver un moyen de contourner les limitations du serveur et trouver une meilleure façon d’enregistrer les éléments de menu, de sorte que, quelle que soit la configuration de votre serveur, vous ne voyez aucune limite de menu personnalisée. C’est plus facile à dire qu’à faire
WordPress est un projet open-source (volontaire), et l’équipe principale fait tout ce qu’elle peut pour l’améliorer chaque jour. Cela sera corrigé, mais la chronologie n’est pas encore définie car elle indique « Future Releases ».
Si vous avez essayé quelque chose de différent qui a résolu ce problème pour vous, veuillez nous en informer dans les commentaires. Cela permettra aux autres de résoudre leur problème jusqu’à ce que l’équipe principale trouve une solution.