WPML
Statut
Résolu
Signalé pour
WPML Multilingual CMS 3.1.7.2

Aperçu de l’anomalie

Une page blanche, ou l’une de ces erreurs peut s’afficher lors de l’exécution de différents types d’actions, ou de l’affichage de certaines pages sur l’interface publique :

  • Fatal error: Maximum function nesting level of '100' reached, aborting!
  • Fatal error: Allowed memory size of xxxxxx bytes exhausted

Dans certaines configurations (rares et très spécifiques), le code de WPML entre dans une boucle infinie. Cette boucle s’exécutera indéfiniment et consommera de la mémoire jusqu’à atteindre la limite maximale de mémoire PHP allouée. Vous rencontrez peut-être ce problème si la limite de mémoire de votre serveur est très élevée et qu’elle est tout de même épuisée.

Veuillez noter que dans 99,5 % des cas, les dépassements de mémoire indiquent des limites de mémoire trop basses pour PHP. Ce bogue se déclenche dans de très rares cas. La plupart des signalements de dépassement de mémoire sont résolus en augmentant simplement la quantité de mémoire autorisée.

Si la mémoire de votre serveur est définie à un niveau très élevé et qu’elle s’épuise quand même, vous pouvez appliquer le correctif suggéré ici. Veuillez noter que cela nécessite de modifier un fichier dans WPML. Nous publierons bientôt une version bêta, qui résout ce problème ainsi que d’autres.

Solution de contournement

Ce correctif est basé sur la version 2.0.9.1 de WPML Traduction de chaînes.
Nous vous recommandons d’attendre la prochaine mise à jour de l’extension, mais si vous avez besoin d’un correctif rapide et disposez des compétences nécessaires pour modifier les fichiers de l’extension, veuillez suivre ces instructions :


  • Ouvrez le fichier *wp-content/plugins/wpml-string-translation/inc/functions.php*.

  • À la ligne 2940, remplacez ceci : WPML_Config::load_config_run();
    Par cela : remove_action('update_option', 'update_option_to_translate_string', 5);
    WPML_Config::load_config_run();
    add_action('update_option', 'update_option_to_translate_string', 5, 3);

  • Enregistrez

Toutes les anomalies connues →