Tout savoir sur la gestion des miniatures (thumbnails) avec WordPress

Depuis la version 2.9 de WordPress, les miniatures d’articles ont fait leur apparition sous la forme d’un module « Image à la une » dans l’éditeur. Ces miniatures nécessitent que le thème prenne en charge une telle fonctionnalité ce qui est encore loin d’être le cas. Je vous propose donc de suivre ce tutoriel pour rendre compatible votre thème et de bénéficier ainsi d’une fonctionnalité au combien utile.

La plupart des blogs actuels affichent une miniature pour accrocher le lecteur à côté du titre et de la description d’un article. C’est le cas sur WordPress Channel et sur un nombre incalculable de blogs.

Activer la prise en charge des miniatures d’articles

Pour activer la prise en charge des miniatures, rendez-vous dans le module Apparence puis Éditeur. Vous pouvez également passer par votre client FTP favori pour éditer les fichiers du thèmes qui se trouvent dans le dossier /wp-content/themes/NOM_DU_THEME. Vous serez alors en mesure d’effectuer une sauvegarde au préalable.

Editez ensuite le fichier functions.php et rajoutez les lignes de code suivantes :

if ( function_exists( 'add_theme_support' ) ) {
  add_theme_support( 'post-thumbnails' );
}

Ce bout de code active le module Image à la une dans l’éditeur de WordPress.

Capture d'écran - Module Image à la une de WordPress
Choisissez un fichier image à définir comme une image à la une

Afficher les miniatures d’articles

Maintenant que vous disposez du module d’ajout de miniatures, il nous faut indiquer où nous souhaitons les voir apparaître sur le site. Typiquement, il nous faut intervenir dans la boucle de WordPress.

Pour rappel, la boucle ou loop affiche vos articles dans les différentes pages du site : accueil, catégorie, tags, etc.

Pour ne pas rentrer dans la technique, localisez tout d’abord la ligne qui appelle le contenu ou l’extrait de votre article dans le fichier index.php :

<?php the_content(); ?>

Ou

<?php the_excerpt(); ?>

Placez ensuite cette ligne de code avant l’une ou l’autre de ces 2 fonctions :

<?php
if ( has_post_thumbnail() ) { // Vérifies qu'une miniature est associée à l'article.
  the_post_thumbnail();
}
?>

N’oubliez pas de sauvegarder le fichier en question puis réitérez l’opération pour l’ensemble des fichiers qui affichent la boucle (category.php, home.php si présent, etc.).

Utiliser différentes tailles de miniatures

Différentes tailles de miniatures existent. En réalité, il faut savoir que les miniatures d’articles peuvent servir à beaucoup de chose : pensez l’outil comme étant un module où l’utilisateur va indiquer une image.

La fonction d’affichage que nous venons de mettre dans le code peut donc être placée n’importe où, d’autant plus que des paramètres de taille existent.

the_post_thumbnail();                  // la miniature par défaut

the_post_thumbnail('thumbnail');       // Miniature (150px x 150px max)
the_post_thumbnail('medium');          // Taille moyenne (300px x 300px max)
the_post_thumbnail('large');           // Taille large (default 640px x 640px max)

the_post_thumbnail( array(100,100) );  // Autres tailles

Comme vous pouvez le constater, les tailles se basent sur les paramètres définis dans le back office de WordPress sous Réglages puis Médias. Prenez soin de les modifier à votre guise ou d’en définir une sur-mesure avec le dernier paramètre.

N.B : attention toutefois à ne pas créer des tailles à la chaine sans prendre soin de vérifier l’espace de stockage fourni par votre hébergeur. Chaque taille créé un fichier image de plus sur votre serveur.

Que faire pour récupérer les anciennes miniatures ?

Si comme moi vous avez utilisé pendant des années des champs personnalisés pour indiquer l’URL de vos miniatures d’articles – basé sur le script timthumb.php par exemple, il existe le plugin Get the Image de Justin Tadlock. Pour autant, je n’ai pas encore testé une telle extension. Il s’agit donc d’une piste que je vous donne pour creuser un peu plus sur le sujet.

Sans l’usage d’un plugin, vous perdrez tout vos paramètres préalablement définis.

Il est recommandé de toujours utiliser un thème WordPress basé sur la fonction de miniature fournie en natif. De cette manière, vous bénéficiez d’une plus grande stabilité pour les versions à venir et une meilleure compatibilité avec les plugins qui utilisent de plus en plus cette fonctionnalité. Vous pouvez également lire ce tutoriel sur la manière de récupérer la première image d’un article via PHP, évitant ainsi d’avoir recours aux miniatures.

Crédits photo : Motorito