[Fermé] Fatal error: Uncaught Error: Call to undefined method WPML\FP\Type::isArray()
Il s'agit du forum d'assistance technique de WPML, le plug-in multilingue pour WordPress.
Il est accessible à tous, toutefois seuls les clients de WPML peuvent y publier leurs messages. L'équipe du WPML répond sur le forum 6 jours par semaine, 22 heures par jour.
Sun
Mon
Tue
Wed
Thu
Fri
Sat
-
6:00 – 12:00
8:00 – 12:00
6:00 – 12:00
8:00 – 12:00
6:00 – 12:00
-
-
13:00 – 15:00
13:00 – 17:00
13:00 – 15:00
13:00 – 17:00
13:00 – 15:00
-
Fuseau horaire du supporter: America/Lima (GMT-05:00)
Je tente de : Mettre à jour WPML vers la version 4.5.14
Le problème apparaît sur de nombreux sites, j'ai essayé toutes les méthodes d'installation possibles malheureusement j'obtiens à chaque fois les mêmes erreurs..
En plus de la première erreur sur la méthode
WPML\FP\Type::isArray()
j'obtiens l'erreur suivante:
Error: Call to a member function get_requested_lang() on null in /Users/xxxxxx/Documents/xxxxxxxxx/xxxxxxxxxx/web/wp-content/plugins/sitepress-multilingual-cms/sitepress.class.php on line 1129
Je m'attendais à voir : Un plugin à jour et un site fonctionnel
Les langues: Anglais (English )Français (Français )
Fuseau horaire: America/Lima (GMT-05:00)
Bonjour,
Bienvenue sur le support de WPML.
Merci pour le fichier de débogage. Je vois que vous utilisez des versions très anciennes de WPML et String Translation. Votre version date d'avril 2019, il y a pratiquement 4 ans.
De nombreux changements ont été fait, par exemple Translation management fait maintenant partie de WPML CMS (le plugin principal).
Pour mettre à jour votre site sans avoir de problème il est important de le faire faire progressivement en passant d'une version majeure à la suivante et de mettre à jour WPML et String Translation en parallèle.
C'est à dire:
- Passez de WPML 4.2.6 à Version 4.3.0 (October 21, 2019) et String Translation Version 3.0.0 (October 21, 2019)
- Puis passez de 4.3.0 à Version 4.4.0 (September 1, 2020) et String Translation Version 3.1.0 (September 1, 2020)
et ainsi de suite.
PS: Notez que "Translation management" fait maintenant partie du plugin principal WPML depuis la version 4.5 et vous serez donc invité à éliminer l'ancienne version de cet add-on une fois WPML actualisé a 4.5.
Sauf qu'en essayant à présent de mettre à jour WPML en 4.5.0 j'obtiens l'erreur suivante:
Fatal error: Uncaught Error: Call to undefined method WPML\FP\Cast::toBool() in /Users/xxxxxxxxxx/Documents/xxxxxxxxxx/xxxxxxxxxx/web/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/core-api/core/settings/Automatic.php on line 28
Les langues: Anglais (English )Français (Français )
Fuseau horaire: America/Lima (GMT-05:00)
Bonjour,
Je vais demander à l'équipe de deuxième niveau s'ils ont une idée. En attendant leur réponse pourriez vous augmenter votre allocation de mémoire PHP (40M). La configuration minimale requise pour WPML est de 128M, mais nous recommandons 256M :
Accédez à votre serveur via FTP et ouvrez le fichier wp-config.php (dans le root de votre WordPress).
Insérez ces lignes juste avant /* That's all, stop editing! Happy blogging. */
Je pense que le problème est lié à une configuration de WPML mais en attendant leur réponse peut être que vous pourriez essayer de désactiver les autres plugins anciens. En commençant par les notres "Yoast SEO Multilingual" et "Gravity Forms Multilingual".
Vous pouvez essayer un environnement minimal et désactivez tous les plugins (sauf WPML, String Translation) et changez de thème pour un thème WordPress comme 2020.
Si l'erreur disparaît commencez à réactiver les plugins un par un ou en petit groupe. De cette manière il vous sera possible d'identifier si c'est un plugin qui crée un conflit.
Les langues: Anglais (English )Français (Français )
Fuseau horaire: America/Lima (GMT-05:00)
Bonjour,
De mon côté la première réponse que j'ai eu signale qu'il pourrait s'agir d'un problème de cache sur le serveur. Et vous pouvez essayer aussi de désinstaller/réinstaller WPML.
J'ai bien passé la limite de mémoire à 256M, désactivé les plugins sauf ceux indiqués cependant le problème persiste.
Si j'essaye de téléverser l'extension WPML 4.5.0 j'obtiens le message suivant "Le lien de suivi a expiré" et le module ne s'installe pas.
Si j'upload directement le dossier dans le répertoire des plugins en remplaçant les fichiers j'obtiens l'erreur:
Fatal error: Uncaught Error: Call to undefined method WPML\FP\Cast::toBool() in /Users/xxxxxxxxxx/Documents/xxxxxxxxxx/xxxxxxxxxx/web/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/core-api/core/settings/Automatic.php on line 28
Si je clique sur "Mettre à jour" depuis la liste des modules j'ai le message suivant "La mise à jour a échoué : Une erreur critique est survenue sur ce site." et rien ne se passe.
J'ai essayé également d'installer une version plus haute du module et le problème reste le même.
J'ai du mal à comprendre comment du cache serveur pourrait intervenir dans le problème et créé la même erreur sur 3 environnements différents (local, pré-production et production) surtout en local.
Les langues: Anglais (English )Français (Français )
Fuseau horaire: America/Lima (GMT-05:00)
Bonjour,
J'allais vous demander l'accès pour essayer d'installer le plugin moi même mais je vois que vous êtes en local.
- L'erreur lien expiré est normalement lié à une limite de upload très basse (2M) mais je vois que vous avez 32M ce qui est suffisant pour télécharger WPML. Je laisse tout de même un article sur le sujet:
Ref: lien caché
- Lorsque vous téléchargez le dossier par FTP, faites cette manipulation: renommez le dossier du plugin déjà présent (sitepress-multilingual-cms_OLD) puis uploadé le nouveau dossier. De cette manière vous avez eux dossiers différents.
Nico
Le sujet '[Fermé] Fatal error: Uncaught Error: Call to undefined method WPML\FP\Type::isArray()' est fermé aux nouvelles réponses.