web-dev-qa-db-fra.com

the_post_thumbnail () Les tailles personnalisées ne s'affichent pas correctement

J'essaie d'afficher des icônes d'image larges à partir de la fonction the_post_thumbnail (). J'utilise la valeur "vraie" pour le rognage, mais ils ne sont pas bien rognés ... J'obtiens des résultats étranges avec différentes tailles (j'essaie d'utiliser 200width x 150height). Si l'image ne peut pas être affichée avec de bonnes proportions (je ne sais pas pourquoi je la recadre?), Alors je veux qu'elle ait toujours une hauteur exacte de 150 pixels! Comment puis-je y arriver? J'ai essayé avec set_post_thumbnail_size () mais c'est encore pire ...

1
smogg

Si la dimension critique est la hauteur, vous avez plusieurs options:

Recadrage difficile à la largeur/hauteur exacte:

<?php
add_image_size( 'wide-image-icon', 200, 150, true );
?>

Le rognage dur créera une taille de vignette en utilisant les dimensions exact. Assurez-vous que toutes les images ont une largeur/hauteur minimale comme défini.

Ou rognage doux (c'est-à-dire "boîte-redimensionnement") contraint à la hauteur:

<?php
add_image_size( 'wide-image-icon', 9999, 150, false );
?>

Le rognage progressif avec une dimension non contrainte (c'est-à-dire 9999 width) réduira la taille de la boîte à l'exacte height, tout en permettant à width d'être essentiellement n'importe quoi. Assurez-vous que toutes les images ont une hauteur minimale définie.

De plus, assurez-vous que si vous avez ajouté ces fonctions add_image_size() après avoir déjà téléchargé/joint quelques images, vous régénérez vos vignettes _.

2
Chip Bennett