Menu
Menu

Nous contacter

01 82 83 51 70 infos@globalis-ms.com

6B rue Auguste Vitu

75015 Paris, France

Optimiser le poids des medias WordPress avec wp-cubi et wp-cubi-imagemin

Tribune Glob'codeur

Le 8 mars 2018 par Pierre

« Retour

Retour sur la version 0.4.0 de la stack de développement wp-cubi

Après déjà 10 releases sur github et packagist, nous avons publié hier la version 0.4.0 de la stack de développement pour Wordpress wp-cubi.

Alors que la version 0.3.0 introduisait un système de logs pré-configuré et prêt à l'emploi avec monolog et wonolog (article à venir sur le sujet), la version 0.4.0 met l'accent sur la problématique des web-performances[1], avec l'ajout d'un nouveau plugin wp-cubi-imagemin, disponible sur github.

Logo Wp-Cubi Globalis

Présentation

wp-cubi-imagemin est un plugin WordPress, sous forme de package composer, qui optimise automatiquement le poids des media uploadés sous WordPress au format jpeg, png ou gif (ainsi que le poids des miniatures des fichiers PDF, elles-mêmes au format jpeg).

wp-cubi-imagemin est une solution open-source et standalone, qui permet notamment de s'affranchir des services tiers de minification d'image, souvent payants, et ainsi d'assurer une amélioration constante des web-performances des sites aussi bien sur les projets complexes pour des clients grands comptes, que sur des petits projets ou sites marketing à faible budget.

Fonctionnement

Le plugin se configure très simplement via quelques constantes (voir le README complet sur github), et utilise plusieurs outils de manipulation d'images tels que pngquant, jpegoptim et gifsicle, sur le principe suivant :

- Manuellement : le développeur peut fournir lui-même les binaires de ces outils et les téléchargeant ou en les compilant, et n'a qu'à définir une constante pour indiquer leur chemin

- Installation système : si la constante du chemin d'un outil n'est pas définie, wp-cubi-imagemin va tenter de trouver une version installée sur le système (la plupart des hébergeurs professionels fournissent par défaut ces outils sur leurs serveurs)

- Absence d'outil : si un outil n'est trouvé d'aucune des deux façons (manuellement, ou sur le système), il n'est pas utilisé

Ainsi wp-cubi-imagemin assure le maximum d'optimisation possible que le serveur et la configuration peuvent fournir, sans jamais provoquer d'erreur si les outils d'optimisation ne sont pas fournis ou installés.

À configuration complète, wp-cubi-imagemin produit des taux de compression similaires aux références du marché tels que https://tinypng.com/

Ligne de commande

wp-cubi-imagemin est également branché automatiquement sur les commandes wp-cli de régénération des images tels que `wp media regenerate`, et fournit une nouvelle commande wp-cli : `wp media optimize <directories>... [--jpeg_level=<jpeg_level>]` afin de pouvoir optimiser un répertoire précis, ou de scripter des opérations sur des fichiers situés en dehors des media WordPress.

Exécution de la commande wp-cli dans un terminal

wp-cli étant fourni par défaut lors d'une installation de wp-cubi, la version 0.4.0 permet donc une solution complète de l'optimisation des images, les commandes wp-cli pouvant par exemple être utilisées pour optimiser les images d'un thème lors du déploiement de l'application.

Contributions

wp-cubi et wp-cubi-imagemin sont deux projets open-source encore en développement. Nous sommes évidemment preneurs de retours d'expérience et d'utilisation, de suggestions, de report de bug ou d'ouvertures de pull-requests !

Nous serons également présents ce vendredi 09 mars 2018 au WordCamp Paris pour en discuter et échanger sur les problématiques de développement WordPress auxquelles wp-cubi essaye de répondre.

[1] Voir la conférence complète de Globalis sur le sujet, au WP Tech 2015 : «Pensez Web-Performances avec WordPress»

Article précédent Article suivant