Skip Navigation

This thread is resolved. Here is a description of the problem and solution.

Problem:
Vous utilisez ACF via des plugins avec des champs déclarés dans des fichiers PHP, et les traductions sont gérées via un textdomain. Depuis la dernière mise à jour d'ACFML, les traductions ne se chargent pas correctement dans la zone d'administration de vos sites multilingues, alors qu'elles fonctionnent sur un site monolingue.

Solution:
Le client a résolu le problème de la manière suivante:
Le problème de chargement du textdomain était lié au hook utilisé, init au lieu de plugin_loaded. Les deux exemples sont donnés dans le codex.

En utilisant init, manifestement, le domaine se chargeait avant de pouvoir être pris totalement en compte par ACFML

If this solution does not apply to your case, or if it seems outdated, we highly recommend checking related known issues at https://wpml.org/known-issues/, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. If you still need assistance, please open a new support ticket at https://wpml.org/forums/forum/french-support/.

This is the technical support forum for WPML - the multilingual WordPress plugin.

Everyone can read, but only WPML clients can post here. WPML team is replying on the forum 6 days per week, 22 hours per day.

Tagged: 

This topic contains 15 replies, has 3 voices.

Last updated by Marie-Aude 1 month, 3 weeks ago.

Assisted by: Nicolas V..

Author Posts
September 20, 2024 at 7:04 pm #16203968

Marie-Aude

Bonjour,

merci pour votre retour.

Néanmoins, en tant que personne qui développe depuis 15 ans sur WordPress, et qui a fait du développement dans d'autres environnements avant, le fait que "ça marchait au moins jusqu'en juillet" et que cela a cessé de fonctionner depuis me fait très fortement penser qu'il y a quelque chose dans une des mises à jour qui a créé ce problème.

Le textdomain se charge correctement quand il n'est pas lié à ACF. Menu "Outils magiques" toutes les pages d'options sont générées via la méthode WordPress et la traduction se charge correctement.

Néanmoins, il semble y avoir un problème avec le fichier .po, sans qu'il soit possible de savoir lequel :

"PTC could not read the file that you uploaded. This can happen due to different reasons:

The file extension doesn’t match the content
You’re using a character encoding that PTC doesn’t understand
The content of the file is wrong

Make sure that the content is really a file and try again."

Et quand je copie le contenu du fichier .po, j'ai cette réponse "Your file looks like a .json file, but it seems to be invalid" ...

Sachant qu'il s'agit de mon fichier .po qui est lu par WPML. Autrement dit, ce message d'erreur n'aide en rien. Et que la vérification via Poedit n'indique aucune erreur.

Y a til une limite de taille ?

Je ne comprends pas ce que vous voulez dire par "retraduire les chaines avec un textdomain différent" ? Est-ce que je dois les bouger dans un fichier .po différent ? Est ce que vous voulez dire "importer le fichier .po" ce qui conduirait à charger la table de traduction des chaines de plus de 3.000 lignes supplémentaires ?

Je ne dis pas qu'il n'y a pas d'erreur de ma part. Mais que cette erreur n'a pas eu d'impact jusqu'à récemment, ce qui veut dire qu'il y a quelque chose qui a changé dans les contrôles mis en place dans les différents plugins utilisés (WPML, WPML string translation, ACFML).

Et que lorsque ça aboutit à me générer des 404 en masse avec le changement des slugs de taxonomies, ça me "fatigue" pour ne pas dire plus.

September 21, 2024 at 12:17 am #16204232

Marie-Aude

Le problème de chargement du textdomain était lié au hook utilisé, init au lieu de plugin_loaded. Les deux exemples sont donnés dans le codex.

En utilisant init, manifestement, le domaine se chargeait avant de pouvoir être pris totalement en compte par ACFML

Marie-Aude confirmed that the issue was resolved on 2024-09-21 00:17:18.
This ticket is now closed. If you're a WPML client and need related help, please open a new support ticket.