Pour un fonctionnement optimal, WPML a besoin :

  • De la version WordPress 3.9 ou toute version ultérieure
  • De la version PHP 5.3 ou toute version ultérieure, ainsi que d’un espace de mémoire d’au moins 128 Mo (voir paramètres de mémoire de WP). N’oubliez pas que la mémoire requise dépend de vos contenus, de votre thème et de tous les modules d’extension.
  • De la version MySQL 5.6 ou toute version ultérieure.
  • Que vous puissiez créer des tableaux dans votre base de données.
  • De l’extension de chaînes multi-octets afin de pouvoir utiliser l’outil de traduction de chaînes de WPML
  • De l’extension SimpleXML afin de pouvoir utiliser les fichiers XLIFF dans Gestion de traduction de WPML.
  • La fonction eval() PHP doit être activée. Nous vous en disons plus dans la rubrique dédiée à eval().

Utiliser des versions anciennes de PHP et MySQL

WPML peut fonctionner sur des versions antérieures de PHP et MySQL, mais nous ne pouvons le tester. Si vous utilisez des versions antérieures, il est fortement recommandé d’activer le mode débogage de WPML. Toute erreur PHP sera ainsi reconnue et vous serez en mesure de savoir si tout fonctionne correctement.

N’hésitez pas à nous faire part ici de toute expérience relative au fonctionnement de WPML avec d’autres versions.

Comment savoir quelle version de PHP vous utilisez actuellement

Certaines sociétés d’hébergement mutualisé ont installé PHP4 et PHP5. La meilleure façon de vérifier quelle version vous utilisez actuellement est de le demander directement au processeur PHP lui-même (et non à un technicien de la société d’hébergement).

Créez un fichier appelé php_info.php et placez-le dans votre répertoire WordPress (juste à côté du fichier wp-config.php). Ce fichier doit contenir les éléments suivants :

<?php phpinfo(); ?>

Ce n’est pas sorcier, n’est-ce pas ? Si vous le souhaitez, n’hésitez pas à le télécharger sous forme de fichier ZIP, comme ici : php_info.zip (bien sûr, vous aurez besoin de le décompresser avant de le télécharger sur votre serveur).

Une fois placé, ouvrez une fenêtre de votre navigateur et accédez à : http://votredomaine.com/php_info.php

Une image similaire à celle ci-dessous devrait s’afficher :

php-info.php indique la version PHP sur le serveur

php-info.php indiquant la version PHP sur le serveur

Sur la partie supérieure, il est indiqué quelle version de PHP vous utilisez. S’il est renseigné PHP version 4, ce n’est pas l’idéal. La meilleure chose à faire est d’envoyer un e-mail à votre société d’hébergement et de leur demander comment activer PHP5 ou version ultérieure.

Structure de permaliens

WPML ajoute des informations de langue dans les URL. Le test est effectué avec les structures de permaliens suivantes :

  • Celle par défaut
  • /%année%/%numérodumois%/%nomdelapublication%/

Explication :

D’autres structures de permaliens peuvent également fonctionner, toutefois elles peuvent également causer des problèmes selon les configurations. Sur tous nos sites, nous utilisons /%year%/%monthnum%/%postname%/.

Pour les pages, l’URL sera exactement la même qu’avec /%nomdelapublication%/. Cependant, avec cette structure de permaliens, WordPress ne confondra jamais pages et publications, ce qui pourrait autrement entraîner des problèmes de résolution de langue.

Utilisation de la fonction eval()

La fonction eval() doit être activée car WPML utilise le cadre TWIG pour sa structure et ses modèles, ce qui fait que WPML dépend de cette fonction.

La plupart des moteurs de modèles populaires, tels que Smarty et TWIG, ont trouvé qu’il était plus rapide d’écrire le code PHP dans un fichier. De cette façon, ils peuvent exploiter la mise en cache OPcode et ne pas exiger la construction d’un environnement d’exécution pour le code de modèle.

TWIG effectue beaucoup de contrôles et d’assainissement pour éviter d’éventuelles attaques, et il est compatible avec WPML. Cependant, nous ne pouvons pas assurer que d’autres développeurs ont effectué les mêmes contrôles que nous en termes de processus d’assurance de la qualité.

Nous cherchons toujours quelles solutions il serait possible d’utiliser ne requérant pas de compilation de modèles, afin de ne plus avoir à utiliser la fonction eval(). Cependant, pour l’instant, c’est la meilleure solution.

Notez qu’en général, la fonction eval() ne peut pas être désactivée en PHP, mais certaines extensions telles que Suhosin peuvent le faire. Ces extensions peuvent être installées et configurées par votre fournisseur d’hébergement.

Laisser une réponse

Veuillez nous laisser ici, et seulement sur cette page, vos commentaires.
Pour toute question relative à l'assistance technique et toute suggestion pour de nouvelles fonctionnalités, rendez-vous sur notre forum. Nous vous y attendons !

Vous pouvez utiliser ces balises :
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>