Réponses:
Lorsqu'une image est téléchargée dans WordPress, elle est enregistrée dans sa taille d'origine, ainsi que sous forme de copies redimensionnées de différentes tailles. De cette façon, il devient facile d'utiliser différentes tailles, de la même image, à des fins différentes.
Par défaut, WordPress crée 3 copies dans 3 tailles différentes:
'thumb'
'medium'
'large'
La taille en pixels de ces 3 tailles peut être définie dans le tableau de bord WordPress, sous le menu Settings -> Media
.
Maintenant, la fonction add_image_size
est utilisée pour enregistrer une nouvelle taille, qui s'ajoute aux 3 valeurs par défaut.
Chaque taille enregistrée peut être récupéré en utilisant son nom, dans une fonction de WordPress, par exemple wp_get_attachment_image_src
, wp_get_attachment_image
, wp_get_attachment_link
.
Toutes ces fonctions acceptent un paramètre $size
qui devrait être le nom d'une des tailles enregistrées (l'une des 3 normes ou l'une des tailles personnalisées enregistrées avec add_image_size
).
Si 'full'
est utilisé comme $size
argument, l'image d'origine est renvoyée, celle non redimensionnée.
En plus des fonctions mentionnées ci-dessus, il existe deux autres fonctions qui utilisent les tailles d'image: get_the_post_thumbnail
et the_post_thumbnail
.
Ces deux fonctions obtiennent (la première) et font écho (la seconde) l'image définie comme "Image vedette" pour un article.
Ce qui est retourné (ou répercuté) par ces fonctions est une img
balise html complète , quelque chose comme
<img scr="http://www.example.com/wp-content/2013/08/image-200x200.jpg" />
Alors, quelle est la taille utilisée?
Si a $size
est passé comme 2e argument (le 1er l'est $postid
), ces fonctions renvoient l'image dans cette taille. Dans le cas contraire, ces fonctions de recherche d'une taille de l' image enregistrée avec le nom: post-thumbnail
.
Ce n'est pas l'une des 3 tailles par défaut, en fait, c'est la 4ème taille standard (la 5ème est considérée full
) et vous pouvez l'enregistrer en appelant set_post_thumbnail_size
.
Donc
set_post_thumbnail_size( $width, $height, $crop );
est un raccourci pour
add_image_size( 'post-thumbnail', $width, $height, $crop );
Si vous n'avez pas appelé set_post_thumbnail_size
(ce qui signifie que la taille 'post-thumbnail'
n'est pas créée), WordPress utilisera la taille thumb
et si même cette taille n'est pas disponible, WordPress utilisera l'image d'origine, celle non redimensionnée.
L'enregistrement de tailles d'image personnalisées peut être très utile lors de la conception d'un thème, mais il est important de ne pas en abuser: chaque image téléchargée est copiée et redimensionnée pour toutes les tailles enregistrées, donc l'enregistrement de nombreuses tailles ralentira considérablement le processus de téléchargement d'images.
Une note:
Sachez que lorsque WordPress crée des copies à l'échelle d'une image, il ne l'agrandit jamais, mais ne fait que des copies plus petites: par exemple, si l'image d'origine est 400x500px et que la taille d'image `` moyenne '' est 800x600px, la taille moyenne et plus ne sont pas créées.
Ainsi, l'enregistrement d'une taille d'image ne donne jamais la sécurité qu'un fichier image pour chaque taille enregistrée existe réellement dans le dossier de contenu WordPress. Même parce que les tailles d'images enregistrées changent facilement: modification des paramètres, changement de thème, etc.
Lorsqu'une taille d'image change, pour une raison quelconque, la modification a un effet sur les images téléchargées après cette modification; les images téléchargées avant ne modifient pas les dimensions et ne sont pas redimensionnées et réenregistrées.
Si l'on doit s'appuyer sur des tailles d'image spécifiques après que certaines images ont déjà été téléchargées (par exemple après avoir changé de thème), le plugin Regenerate Thumbnails sera un épargnant de vie.
set_post_thumbnail_size( 150, 150 ); If you haven't called set_post_thumbnail_size (which means the size 'post-thumbnail' is not created), WordPress will use the size thumb, and if even this size is not available, WordPress will use the original image, the one not resized.
... est incorrect. D'après mon expérience, si cela set_post_thumbnail_size()
n'a pas été appelé, WP revient à l'image en taille réelle.
Du Codex:
set_post_thumbnail_size
Définissez les dimensions par défaut de l’image sélectionnée (anciennement Poster miniature). Pour enregistrer des tailles d'image supplémentaires pour les images sélectionnées, utilisez: add_image_size ().
add_image_size
Enregistre une nouvelle taille d'image. Cela signifie que WordPress créera une copie de l'image sélectionnée (anciennement connue sous le nom de miniature de message) avec les dimensions spécifiées lorsque vous téléchargez une nouvelle image.