Nous sommes très heureux d’annoncer une première version bêta de WPML 3.1.9, qui fonctionne parfaitement avec la mise en cache d’objets. Si vous recherchez des performances nettement supérieures pour les grands sites comportant de nombreuses chaînes de texte, cette version est pour vous.
La Traduction de chaînes de WPML remplit une fonction très importante, vous permettant de traduire des chaînes de texte sans avoir à passer par des fichiers .mo. C’est particulièrement important pour les chaînes dynamiques, qui sont créées dans la base de données et non stockées dans le code PHP.
WPML 3.1.9 est la première étape vers une amélioration massive des performances. Dans cette étape, nous permettons aux extensions de mise en cache d’objets de capturer les accès répétés et de les éliminer. Nous avons expérimenté différentes techniques de mise en cache et avons finalement opté pour la plus performante – « aucune mise en cache dans WPML ». Cela peut être un peu surprenant, mais c’est en fait logique. Les extensions de mise en cache essaient de regrouper les opérations et de les stocker en mémoire sous forme de blocs plus grands et plus rapides. Lorsque WPML essayait de mettre en cache les chaînes de texte lui-même, cela rendait la mise en cache d’objets inutile.
Dans cette version publiée, nous avons complètement nettoyé notre mise en cache, optimisé notre accès à la base de données et rendu tout accessible à la mise en cache d’objets. Cela permet de simplifier notre logique (moins de traitement PHP, moins de risques de bogues) et permet également à la mise en cache d’objets de faire son travail.
De nombreux sites verront à peine l’amélioration des performances car la charge de la Traduction de chaînes ne représentait pas une part énorme de la charge globale de la page. Certains sites qui ont beaucoup de chaînes de texte verront une amélioration significative. Même sans mise en cache d’objets, ils devraient déjà avoir beaucoup moins de requêtes dans la base de données. Et ils ont le potentiel de voir une amélioration encore plus grande en activant la mise en cache d’objets.
Comment activer la mise en cache d’objets avec W3TC
La mise en cache d’objets nécessite un peu de planification et de configuration. Voici une liste d’inventaire des éléments dont vous aurez besoin :
- Une extension PHP opcache (à ne pas confondre avec une extension WordPress)
- Pour PHP < 5.5 => utilisez APC, allouez suffisamment de mémoire (128 Mo ou plus pour les grands sites (principalement WCML) est une bonne idée), en production, activez apc.stat
- Les utilisateurs qui savent ce qu’ils font pourraient également essayer d’exclure sitepress.class et d’autres de nos très gros fichiers d’APC, cela pourrait apporter des gains considérables
- Installez via pecl
- Pour PHP >= 5.5 => utilisez ZendOpcache, c’est actuellement plus rapide et beaucoup plus facile à configurer
- installez via pecl ou pendant la compilation de PHP
- Pour PHP < 5.5 => utilisez APC, allouez suffisamment de mémoire (128 Mo ou plus pour les grands sites (principalement WCML) est une bonne idée), en production, activez apc.stat
- Dans W3TC lui-même
- Sélectionnez l’extension OpCache que vous utilisez pour les différentes options de mise en cache (base de données, objet, etc.), n’utilisez le disque dur nulle part ici !
- Attention aux réglages gZip pour la sortie (cela semble plutôt ralentir les choses à moins que vous n’ayez un processeur puissant)
- Configuration PHP :
- Allouez suffisamment de RAM
- Activez le cache de requêtes PHP (pas strictement lié à W3TC, mais cela aide énormément à certains endroits)
- Configuration MySQL :
- Si vous n’avez pas de configuration memcached complexe => essayez le cache de requêtes MySQL, il devrait apporter des gains significatifs, en particulier avec la nouvelle Traduction de chaînes
Téléchargez et essayez WPML 3.1.9
Comme il s’agit d’une version bêta, vous devez la télécharger manuellement. Connectez-vous à votre compte WPML.org et cliquez sur Téléchargements.
Faites défiler tout en bas et obtenez le Paquet CMS bêta. Il s’agit d’un fichier ZIP qui inclut d’autres fichiers ZIP. Décompressez-le localement. Maintenant, vous pouvez soit téléverser les fichiers ZIP sur WordPress (qui les extraira), soit les extraire vous-même et les enregistrer dans le dossier des extensions.
Des questions ? Des suggestions ? Des idées ? Laissez vos commentaires et nous vous répondrons.

