Verhindern Sie, dass WordPress zusätzliche beschnittene Bildgrößen erstellt
January 7, 2025
0 10 minutes read
Immer wenn Sie ein Bild über die Medienbibliothek auf Ihre WordPress-Site hochladen, werden automatisch mehrere zusätzliche Versionen dieses Bildes erstellt und gespeichert. Wenn Ihre Site diese zusätzlichen Bildgrößen nicht nutzt, verbrauchen sie wertvollen Speicherplatz und erhöhen die Größe Ihrer Server-Backups.
In dieser Anleitung führe ich Sie durch die Standardbildgrößen, erkläre, warum sie generiert werden, zeige Ihnen, wie Sie zusätzliche Bildgrößen identifizieren und stelle Ihnen den Codeausschnitt zur Verfügung, um zu verhindern, dass WordPress unnötige Bildgrößen erstellt.
Keine Lust zu lesen? Springe zum Snippet oder Plugin.
Inhaltsverzeichnis
Standardbildgrößen in WordPress
Bildgrößen, die von Ihrem WordPress-Theme und Ihren Plugins erstellt wurden
Warum werden Bilder mit zusätzlicher Größenänderung erstellt?
Admin-Panel für WordPress-Medieneinstellungen
Der Schwellenwert für die große Bildgröße in WordPress
Deaktivieren Sie den Schwellenwert für die Größe großer Bilder
Ändern Sie den Schwellenwert für die Größe großer Bilder
Wie überprüfen Sie, welche Bildgrößen auf Ihrer Website definiert sind?
Schnelle und „schmutzige“ Methode
Registrierte Bildgrößen im WP Admin anzeigen
Verhindern Sie, dass WordPress zusätzliche Bildgrößen erstellt
Optimiertes Code-Snippet
WP Plugin „Alle Bildgrößen deaktivieren“
Was passiert, wenn dennoch zusätzliche Bildgrößen erstellt werden?
Bestimmte Bildgrößen von der Erstellung beim Hochladen ausschließen
Tipps zur Reduzierung der Notwendigkeit einer Größenänderung von Bildern
So entfernen Sie alte Bildgrößen von Ihrem Server
Abschluss
Standardbildgrößen in WordPress
Hier ist eine Tabelle aller Standardbildgrößen in WordPress:
Name
Standardgröße
Beschreibung
Miniaturansicht
150×150
Benutzerdefinierte Miniaturbildgröße.
Medium
300×300
Benutzerdefinierte mittlere Größe.
mittel_groß
768×0
Für reaktionsfähige und HDPI-Displays.
groß
1024×1024
Benutzerdefinierte große Größe.
1536×1536
1536×1536
Für Retina/HDPI-Displays.
2048×2048
2048×2048
Für größere, hochauflösende Displays.
-skaliert
~2560
Wenn das hochgeladene Originalbild größer als der Schwellenwert für die große Bildgröße ist, erstellt WordPress diese skalierte Version.
voll
–
Größtmögliche Größe. Originalbild oder skaliertes Bild.
Wie Sie sehen, sind es ziemlich viele!
Das bedeutet, dass jedes Mal, wenn Sie ein Bild auf Ihre WordPress-Site hochladen, bis zu 7 zusätzliche Bildversionen auf Ihrem Server generiert und gespeichert werden können! Dabei handelt es sich nur um die im Core definierten Standardgrößen. Es sind keine zusätzlichen Größen enthalten, die durch Ihre Themes und Plugins definiert werden.
Bildgrößen, die von Ihrem WordPress-Theme und Ihren Plugins erstellt wurden
Die meisten klassischen WordPress-Themes (Non-Block-Themes) nutzen die Miniaturbild-, mittleren und großen Kerngrößen nicht. Normalerweise registrieren sie ihre eigenen Bildgrößen, die am besten zum Design und Layout des Themas passen.
Plugins können auch neue Bildgrößen registrieren. Dies kommt häufig bei Plugins vor, die zum Anzeigen von Beiträgen oder zum Einbinden benutzerdefinierter Beitragstypen verwendet werden. Paradebeispiele wären Verzeichnisse, Veranstaltungen, Immobilien, E-Commerce, LMS, Seitenersteller usw.
Das bedeutet, dass Ihre Website möglicherweise noch größere Bildgrößen erstellt und Ihren Server und Ihre Sicherungsdateien wirklich überlastet.
Es empfiehlt sich, die Dokumentation zum Thema und allen auf Ihrer Website verwendeten Plugins zu lesen, um sicherzustellen, dass keine unnötig verkleinerten Versionen Ihrer Bilder erstellt werden. Die meisten gut codierten Themes und Plugins bieten eine Einstellung zum Ändern oder Deaktivieren zusätzlicher Bildgrößen.
Wenn Sie unser Total-Theme verwenden, lesen Sie unbedingt die Dokumentation zum Bildgrößen-Bedienfeld. Wenn Sie es nicht sind, aber Entwickler sind, möchten Sie vielleicht einen Blick darauf werfen, wie ich Dinge gemacht habe, um mich inspirieren zu lassen.
Später in diesem Handbuch werde ich Ihnen eine einfache codebasierte Lösung zum Anzeigen aller registrierten Bildgrößen auf Ihrer Website bereitstellen.
Warum werden Bilder mit zusätzlicher Größenänderung erstellt?
Bevor wir erklären, wie Sie verhindern können, dass WordPress alternative Bildgrößen für Ihre Uploads generiert, ist es wichtig zu verstehen, warum WordPress diese zusätzlichen Größen überhaupt erstellt. Nachfolgend finden Sie eine Liste der wichtigsten Gründe:
Schnellere Ladezeiten: Kleinere Bilder werden schneller geladen.
Responsive Bilder: Stellen Sie alternative Bildgrößen für unterschiedliche Bildschirmgrößen bereit.
Konsistenz: Damit alle Ihre vorgestellten Bilder die gleiche Größe haben.
Hochauflösende Displays: Stellen Sie alternative Bilder für hochauflösende und Retina-Displays bereit.
Ausgewählte Miniaturansichten: Stellen Sie alternative Bildgrößen zur Verwendung in verschiedenen Teilen der Website oder mit themen-/pluginspezifischen Elementen bereit.
Serverleistung: Wie im Fall des -skalierten Bildes, wie in der Tabelle oben angegeben.
Admin-Panel für WordPress-Medieneinstellungen
Wenn Sie auf Ihrer WordPress-Site angemeldet sind, gehen Sie zu Settings > Media Sie finden Optionen zum Festlegen von drei der wichtigsten WordPress-Bildgrößen (Miniaturansicht, Mittel, Groß).
Wenn Sie die Breite und Höhe aller Felder auf 0 setzen, wird verhindert, dass WordPress diese zusätzlichen Bilder erstellt. Dies ist das Erste, was ich mache, wenn ich WordPress installiere und es für die meisten Websites empfehle.
Dies ist jedoch keine vollständige Lösung, um unerwünschte Bilder mit veränderter Größe von Ihrer Website zu verhindern. Lesen Sie weiter, um mehr zu erfahren und meinen Codeausschnitt zum Deaktivieren aller Bildgrößen zu sehen.
Der Schwellenwert für die große Bildgröße in WordPress
In WordPress 5.3.0 wurde der sogenannte Big Image Size Threshold eingeführt. Dies ist die maximale Breite oder Höhe eines Bildes, für die WordPress beim Hochladen des Bildes zusätzliche Bildgrößen generiert. Der Standardwert ist 2560.
Wenn ein Bild in die Medienbibliothek hochgeladen wird, das den Schwellenwert überschreitet, verkleinert WordPress das Bild und es wird die größte verfügbare Größe verwendet. WordPress generiert dann alle auf Ihrer Website definierten zusätzlichen Bildgrößen basierend auf der verkleinerten Version.
Wenn Sie also Bilder hochladen, die größer als 2560 (Breite oder Höhe) sind, erstellt WordPress zusätzliche Bilder auf Ihrem Server. Möglicherweise möchten Sie dies deaktivieren oder entsprechend anpassen.
Deaktivieren Sie den Schwellenwert für die Größe großer Bilder
Wenn Sie in der Lage sein möchten, große Bilder auf Ihre Website hochzuladen, ohne dass WordPress sie verkleinert und eine alternative Version erstellt, können Sie dies mit dem folgenden Codeausschnitt tun:
// Disable the big image size thresholdadd_filter( 'big_image_size_threshold', '__return_false' );
Vorsicht: Der Schwellenwert für große Bilder existiert aus einem bestimmten Grund und ich empfehle dringend, ihn NICHT zu deaktivieren. Das Deaktivieren dieser Funktion kann zu Leistungsproblemen auf dem Server führen. Wenn Sie wissen, dass nur kleinere Bilder auf die Website hochgeladen werden, können Sie es deaktivieren, aber es macht sowieso nichts, es eingeschaltet zu lassen.
Ändern Sie den Schwellenwert für die Größe großer Bilder
Wenn Ihre Website größere Bilder zulassen muss (z. B. eine Foto-Website), möchten Sie möglicherweise den Schwellenwert für die Größe großer Bilder ändern. Auf diese Weise verkleinert WordPress Ihre Bilder nicht.
Hier ist ein Beispiel, wie Sie den Wert von 2560 auf 5000 ändern können:
// Modify the big image size thresholdadd_filter( 'big_image_size_threshold', function( $threshold ) { return 5000;} );
Wie überprüfen Sie, welche Bildgrößen auf Ihrer Website definiert sind?
Leider verfügt WordPress nicht über eine native Möglichkeit, eine Liste aller auf Ihrer Website registrierten Bildgrößen anzuzeigen. Es gibt Plugins, die Sie dafür verwenden können, aber da ich mich hauptsächlich auf Code-basierte Tutorials konzentriere, zeige ich Ihnen, wie Sie Code verwenden können, um eine Liste der registrierten Bilder auf Ihrer Website anzuzeigen.
Schnelle und „schmutzige“ Methode
Wenn Sie diesen Code kopieren und in Ihre Datei „functions.php“ einfügen und dann Ihre Site aktualisieren, wird oben auf der Live-Site eine Liste der registrierten Bildgrößen angezeigt. Sie können sie dann kopieren und als Referenz in eine Textdatei einfügen und dann den Code entfernen.
// Display all defined image sizes at the top of the site inside a
Ideal ist der Zugriff auf eine Liste der registrierten Bildgrößen in Ihrem WordPress-Admin-Panel. Wenn Sie jemals ein neues Plugin aktivieren oder das Design wechseln, können Sie auf diese Weise schnell überprüfen, ob neue Bildgrößen definiert werden.
Das folgende Code-Snippet zeigt unten im Bild eine Tabelle aller definierten Bildgrößen an Settings > Media Tafel:
// Add a table of image sizes to the Settings > Media admin pageadd_action( 'admin_init', function() {add_settings_section('dummy_registered_image_sizes_info',esc_html__( 'Registered Image Sizes', 'text_domain' ),function() {echo '
Technisch gesehen definieren wir mit diesem Code einen neuen Einstellungsabschnitt, registrieren jedoch keine Einstellungen. Stattdessen legen wir den Rückruf für unseren Abschnitt fest, um eine Tabelle zurückzugeben, die alle registrierten Bildgrößen durchläuft und anzeigt.
Hier ist ein Screenshot des Endergebnisses:
Dieses Beispiel stammt aus dem Total-Design, bei dem die standardmäßig registrierten Bildgrößen des Themes auf 9999 x 9999 eingestellt sind, was sehr groß ist, sodass sie standardmäßig nie zugeschnitten werden.
Verhindern Sie, dass WordPress zusätzliche Bildgrößen erstellt
Es gibt keine Option, die Sie einfach im WordPress-Administrator überprüfen können. Um zu verhindern, dass WordPress beschnittene Versionen Ihrer Bilder erstellt, müssen Sie ein wenig Code verwenden. Glücklicherweise ist dies mit einer einzigen Codezeile möglich!
Um zu verstehen, wie dieser Code funktioniert, werfen wir einen Blick auf den Kern image_resize_dimensions() Funktion. Es ist ziemlich lang, deshalb werde ich es hier nicht veröffentlichen, aber Sie können auf den vorherigen Link klicken, wenn Sie den gesamten mit der Funktion verknüpften Code sehen möchten.
Wenn WordPress eine neue Bildgröße erstellt, verwendet es grundsätzlich diese Funktion, um die berechneten Größenänderungsabmessungen für das Bild zurückzugeben, die es dann an das Bild übergibt WP_Image_Editor Klasse. Einhaken in die image_resize_dimensions Filter und die Rückgabe von „false“ führen dazu, dass die Funktion vorzeitig beendet wird, sodass keine Berechnungen durchgeführt werden und letztendlich kein zusätzliches Bild generiert wird.
Optimiertes Code-Snippet
Das vorherige Snippet verhindert, dass WordPress ein Bild zuschneidet, wenn eine neue Bildgröße angefordert wird. Dies funktioniert unabhängig davon, wann eine Bildgröße angefordert wird.
Wir können unseren Code jedoch optimieren, indem wir ihn einbinden intermediate_image_sizes_advanced Filter, der das Array von Bildgrößen zurückgibt, die beim Hochladen eines Bildes automatisch generiert werden.
// Return an empty list of image sizes to generate on uploadadd_filter( 'intermediate_image_sizes_advanced', '__return_empty_array' );
Indem wir ein leeres Array für den Filter zurückgeben, teilen wir WordPress mit, dass beim Hochladen eines neuen Bildes auf unsere Website keine zusätzlichen Bilder generiert werden sollen. Wenn Sie jetzt ein Bild auf Ihre Website hochladen, wird nur das Originalbild zum Server hinzugefügt.
Vollständiger Ausschnitt:
Hier sind beide Ausschnitte zusammengefasst:
// Return false for calculated resized image dimensionsadd_filter( 'image_resize_dimensions', '__return_false' );// Return an empty list of image sizes to generate on uploadadd_filter( 'intermediate_image_sizes_advanced', '__return_empty_array' );
Nun, wenn Sie sich darauf einlassen middle_image_sizes_advanced man muss sich nicht unbedingt auch einklinken image_resize_dimensions.
Der Grund für die Einbindung beider Filter liegt darin, dass ein Theme oder Plugin seine eigene „on-the-fly“-Zuschneidelösung verwendet – die hoffentlich davon Gebrauch macht image_resize_dimensions() Funktion.
WP Plugin „Alle Bildgrößen deaktivieren“
Ich habe das Code-Snippet auch in ein kleines Plugin eingefügt, falls Sie es stattdessen einfach herunterladen und installieren möchten. Für dieses Plugin sollten niemals Updates erforderlich sein und der Überprüfungsprozess des WordPress-Plugins ist ein Albtraum, daher lasse ich es vorerst einfach auf Github.
WP Deaktivieren Sie alle Bildgrößen-Plugin-Github-Repository
Das Plugin wird drei Dinge tun:
Deaktivieren Sie den Schwellenwert für die große Bildgröße.
Geben Sie „false“ für den image_resize_dimensions-Filter zurück.
Gibt ein leeres Array für den Filter „intermediate_image_sizes_advanced“ zurück.
Was passiert, wenn dennoch zusätzliche Bildgrößen erstellt werden?
Wenn Sie das Code-Snippet zu Ihrer Website hinzugefügt haben und feststellen, dass beim Hochladen von Bildern immer noch Bildgrößen generiert werden, müssen Sie Plugins und/oder Ihr Theme deaktivieren, um den Schuldigen zu finden.
Wie bereits erwähnt, ist es möglich, dass es auf Ihrer Website eine benutzerdefinierte „on-the-fly“-Lösung zum Zuschneiden von Bildern gibt, die nicht die Kernfunktionen von WP nutzt und daher von den Kernfiltern nicht beeinflusst wird.
Bestimmte Bildgrößen von der Erstellung beim Hochladen ausschließen
Möglicherweise möchten Sie nicht verhindern, dass alle Bildgrößen generiert werden. Es ist möglich, den Code so zu ändern, dass nur bestimmte Bildgrößen ausgeschlossen werden, z. B.:
// Exclude certain image sizes from being generated on uploadadd_filter( 'intermediate_image_sizes_advanced', function( $sizes ) {$sizes_to_exclude = ['thumbnail','medium','large','medium_large','1536×1536','2048×2048',];foreach ( $sizes_to_exclude as $size_to_exclude ) {unset( $sizes[ $size_to_exclude ] );} return $sizes;} );
Wenn Sie nur bestimmte Bildgrößen ausschließen möchten, stellen Sie sicher, dass Sie sich NICHT darauf einlassen image_resize_dimensions und gibt false zurück.
Und Sie haben wahrscheinlich bemerkt, dass ich die Miniaturansicht sowie die mittleren und großen Bildgrößen in den Snippet eingefügt habe. Auf diese Weise bleiben die Bildgrößen exkorrekt, selbst wenn jemand mit den Einstellungen im Admin herumspielt eingeschlossen.
Tipps zur Reduzierung der Notwendigkeit einer Größenänderung von Bildern
Am Anfang des Artikels habe ich einige Gründe genannt, warum WordPress zusätzliche Bildgrößen erstellt. Wenn Sie die zusätzlichen Bildgrößen deaktivieren möchten, finden Sie hier einige Tipps, um sicherzustellen, dass keine zusätzlichen „Probleme“ entstehen.
Laden Sie keine riesigen Bilder hoch: Stellen Sie sicher, dass Sie keine riesigen Bilder auf Ihre Website hochladen. Wenn Sie keine Kontrolle darüber haben, stellen Sie sicher, dass Sie den Schwellenwert für große Bilder nicht entfernen und akzeptieren Sie, dass Ihre Website bei Bedarf skalierte Bilder erstellt.
Laden Sie große „genug“ Bilder hoch: Es ist schwer zu sagen, wie groß groß genug ist, da es von der Site und dem Kontext abhängt, in dem das Bild hinzugefügt wird. Sie möchten jedoch, dass Ihre Bilder groß genug sind, damit sie auf hochauflösenden Bildschirmen gut aussehen, und gleichzeitig klein genug (in KB), damit das Laden der Website nicht verlangsamt wird.
Optimieren Sie Bilder vor dem Hochladen: Es gibt viele tolle Plugins zur Bildoptimierung, aber warum sollten Sie Ihre Website aufblähen und Serverressourcen verbrauchen, wenn Sie Ihre Bilder vor dem Hochladen optimieren können? Ich persönlich verwende tinypng.com und konvertiere meine Bilder vor dem Hochladen in das WebP-Format.
Verwenden Sie Bildseitenverhältnisse: Einer der Hauptgründe für die Erstellung von Bildgrößen besteht darin, ein einheitliches Erscheinungsbild Ihrer Beiträge zu gewährleisten, da alle vorgestellten Bilder auf die gleichen Abmessungen zugeschnitten werden. Stattdessen können Sie die CSS-Eigenschaft „Seitenverhältnis“ verwenden, um Ihre Bilder gezielt auszuwählen.
Dies sind die wichtigsten Tipps, die mir einfallen. Lassen Sie mich in den Kommentaren wissen, ob Sie weitere gute Vorschläge oder Bedenken haben, die angegangen werden sollten.
So entfernen Sie alte Bildgrößen von Ihrem Server
Das Hinzufügen des Codes, der verhindert, dass WordPress zusätzliche Bildgrößen erstellt, wirkt sich nur auf neu hochgeladene Bilder aus. Wenn Sie den Code zu einer vorhandenen Site hinzufügen, befinden sich möglicherweise Unmengen alter zugeschnittener Bilder auf dem Server, die Sie bereinigen möchten.
Es gibt mehrere Methoden, mit denen Sie alte Bilder mit geänderter Größe löschen können, und viele Blogs empfehlen die Verwendung von CLI (Terminal). Da WordPress die Bildgrößen jedoch in den Metadaten des Anhangs speichert, empfehle ich diese Lösung nicht.
Die einfachste Methode, die ich gefunden habe, ist die Verwendung des Force Regenerate Thumbnails-Plugins. Sie können das Plugin aktivieren, den Prozess ausführen und es dann von Ihrer Site löschen.
Das Plugin durchläuft jeden Bildanhang auf der Website, zieht die definierten Größen aus den Metadaten und löscht sie alle. Nach dem Löschen der Bildgrößen wird der Kern ausgeführt wp_generate_attachment_metadata() Funktion, die die Zwischenbildgrößen für den Anhang neu erstellt. Wenn Sie also über den vorherigen Code zusätzliche Bildgrößen deaktiviert haben, werden keine Bilder generiert.
Ich könnte Ihnen einen Codeausschnitt zum Löschen alter Bildgrößen von Ihrer Website zur Verfügung stellen. Der Vorgang kann jedoch sehr ressourcenintensiv sein und lässt sich am besten mit AJAX durchführen. Das Plugin „Force Regenerate Thumbnails“ durchsucht jedes Bild nacheinander und protokolliert und zeigt Probleme an, wenn es Probleme gibt.
Das Plugin zeigt Ihnen auch, welche Bilder gelöscht und generiert wurden, was wirklich schön ist!
Bevor Sie neue Plugins installieren oder etwas von Ihrer Website löschen, sollten Sie wie immer sicherstellen, dass Sie über ein vollständiges Backup verfügen. Ich habe das Plugin viele Male ohne Probleme verwendet, aber Vorsicht ist besser als Nachsicht.
Abschluss
Persönlich denke ich, dass es für die meisten Websites am besten ist, alle zusätzlichen Bildgrößen zu deaktivieren. Dadurch wird sichergestellt, dass Ihr Serverraum nicht durch Images belegt wird (von denen viele nie verwendet werden) und Ihre Backups dadurch deutlich kleiner bleiben.
Es könnte auch ein Argument für SEO geben. Ich weiß nicht viel über die Optimierung der Google-Bildersuche, aber vielleicht kann es zu Problemen führen, wenn viele gleiche Bilder in unterschiedlichen Größen vorhanden sind. Wenn Sie ein SEO-Experte sind, teilen Sie mir dies bitte in den Kommentaren mit!
Weiterführende Literatur:
Folgendes könnte Sie auch interessieren:
Leitfaden zu den Beschnittgrößen von WordPress-Bildern
Vollständiger Leitfaden zur Optimierung von Bildern in WordPress
We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies.
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
Cookie
Duration
Description
cookielawinfo-checkbox-analytics
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional
11 months
The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
viewed_cookie_policy
11 months
The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.