wake-up-neo.net

Die generierten Bildgrößen stimmen nicht mit den Medieneinstellungen für die Bildgröße überein

Ich habe die folgenden Bildgrößen unter Medieneinstellungen definiert:

Thumbnail Size: 125x69
Medium Size: 461x257
Large Size: 1070x600

Ich habe EWWW Image Optimizer und Thumbnails neu generieren auf dem neuesten WP (4.8) installiert. Ich habe die 'Erweiterten Einstellungen' im EWWW-Optimierer überprüft und im folgenden Screenshot sind die Größen aufgeführt, die meiner Meinung nach generiert werden.

 enter image description here 

Wenn ich jedoch ein Bild hochlade oder Thumbnails neu generieren lasse, stimmt die Breite der generierten Bilder überhaupt nicht überein. Zum Beispiel habe ich ein 1070x600-Bild hochgeladen. Hier ist die Größe, die es tatsächlich generiert hat:

image-123x69.jpg
image-294x165.jpg
image-323x181.jpg
image-335x188.jpg
image-458x257.jpg
image-679x381.jpg
image-768x431.jpg

Ich kann verstehen, dass die Höhe je nach Seitenverhältnis unterschiedlich sein wird, aber ich verstehe nicht, warum sich auch die Breite der generierten Bilder ändert.

Der einzige Code, den ich in der functions.php habe, ist der folgende:

// Add custom image sizes
add_image_size('home-thumbnail-highlight', 694, 381);
add_image_size('home-thumbnail', 330, 181);
add_image_size('listing-thumbnail', 342, 188);
add_image_size('sidebar-small-thumbnail', 300, 165);

Dieses Problem bedeutet beispielsweise, dass bei Verwendung einer Miniaturansicht (125 x h) das Bild leicht pixelig wird, da das generierte Bild 123 x h und das gerenderte Bild 125 x h beträgt. Fehlt mir etwas Offensichtliches oder gibt es eine Möglichkeit, sicherzustellen, dass die generierte Breite immer mit der Breite auf der Seite Medieneinstellungen übereinstimmt?

2
Niraj Pandey

Standardmäßig versucht add_image_size , die Größe Ihrer benutzerdefinierten Bildgrößen zu ändern, anstatt sie zu beschneiden (siehe das vierte Argument in der Funktion).

Sie haben hier also ein paar Möglichkeiten ...

  1. Führen Sie einen Zuschnitt durch, indem Sie true für das vierte Argument von add_image_size übergeben, oder passen Sie die Position des Zuschnitts an, indem Sie ein Array für das vierte Argument übergeben (siehe Dokumentation). Dadurch werden die Bildmaße exakt so angepasst, wie sie definiert wurden (z. B. beträgt die Größe von "Home-Thumbnail-Highlight" 694 x 381).
  2. Setzen Sie die height auf einen sehr hohen Wert und nicht übergeben Sie ein viertes Argument zum Zuschneiden (um eine Größenänderung durchzuführen).

Zum Beispiel:

add_image_size('home-thumbnail-highlight', 694, 99999);
add_image_size('home-thumbnail', 330, 99999);
add_image_size('listing-thumbnail', 342, 99999);
add_image_size('sidebar-small-thumbnail', 300, 99999);

Dadurch werden Ihre benutzerdefinierten Größen gezwungen, immer auf width anstatt auf height zu beschränken.

3
Jared Cobb