Description
WebP-Migrator für W3TC ist ein Begleit-Plugin für W3 Total Cache, das die Arbeit abschließt, sobald der W3TC ImageService ein Bild in WebP konvertiert hat.
Es sind keine Änderungen an .htaccess, mod_rewrite oder der Webserver-Konfiguration erforderlich. Stattdessen wird die Ersetzung einmalig in die Datenbank zurückgeschrieben – im Gegensatz zu einem zur Laufzeit arbeitenden Content-Filter, der URLs bei jeder Anfrage austauscht: Sobald W3TC einen Anhang als konvertiert markiert, wird jedes Vorkommen der Bild-URL – in post_content, Widget-Instanzen und Theme-Mod-Einstellungen (z. B. einem Hintergrundbild im Customizer) – dauerhaft von seiner ursprünglichen Dateiendung (jpg/jpeg/png/gif) auf .webp umgestellt. Dies umfasst absolute, wurzelrelative und protokollrelative URL-Formen, da von Hand erstellte Inhalte (am häufigsten das Feld „Zusätzliches CSS“ des Customizers) Schema und/oder Host häufig weglassen. Der Datensatz des Anhangs selbst (angehängte Datei, Metadaten, MIME-Typ) wird entsprechend aktualisiert, sodass auch die Mediathek und die REST-API konsistent bleiben.
Optional kann das Plugin, sobald ein Bild vollständig ersetzt wurde, die nun nicht mehr benötigten Original-Quelldateien vom Datenträger löschen, um Speicherplatz freizugeben.
Dies ist eine unabhängige, inoffizielle Erweiterung, die in keiner Verbindung zu BoldGrid / W3 EDGE, den Machern von W3 Total Cache, steht und weder von ihnen unterstützt noch gesponsert wird. „W3 Total Cache“ ist eine Marke des jeweiligen Rechteinhabers und wird hier ausschließlich zur Beschreibung der Kompatibilität verwendet.
Funktionen
- Überwacht Konvertierungen des W3TC ImageService und reagiert automatisch darauf.
- Generiert jede Zwischengrösse, die W3TC selbst nicht konvertieren konnte (dies kann stillschweigend geschehen, z. B. bei Website-Icon-Grössen, die nur in bestimmten Admin-Kontexten registriert sind), direkt aus der bereits konvertierten WebP-Datei in Originalgrösse, anstatt unbegrenzt auf ein Ereignis zu warten, das nie eintritt.
- Ersetzt jeden Verweis auf das konvertierte Bild (Originalgrösse und alle Zwischengrössen) – in
post_contentaller Beiträge, Widget-Instanzen und Theme-Mod-Einstellungen – als absolute, wurzelrelative oder protokollrelative URL. - Aktualisiert die eigene Dateireferenz, die Metadaten und den MIME-Typ des Anhangs entsprechend.
- Optional: löscht die Original-Quelldateien nach einer erfolgreichen Ersetzung.
- Eine Quelldatei wird nur dann gelöscht, wenn zuvor bestätigt wurde, dass ihr
.webp-Gegenstück auf dem Datenträger existiert. - Manuelles Werkzeug „Jetzt verarbeiten“ unter Einstellungen WebP Migrator für W3TC für Bilder, die konvertiert wurden, bevor dieses Plugin aktiv war.
- Eine Diagnoseprotokollierung (hinter
WP_DEBUG_LOG) erklärt genau, warum ein Bild übersprungen wurde, um bei der Fehlersuche zu helfen, wenn ein Batch nicht vorankommt. - Korrigiert ausserdem einen Bildverweis im Moment des Speicherns eines Beitrags, für den seltenen Fall, dass das Bild eingefügt wurde, während es im Hintergrund noch konvertiert wurde.
- Die Löschung der Originaldateien eines gerade erst hochgeladenen Bildes wird nach dem Upload um eine kurze Schonfrist verzögert, damit sie nicht während einer Bearbeitungssitzung entfernt werden, die das Bild möglicherweise noch über die ursprüngliche URL anzeigt.
Funktionsweise
- Der W3 Total Cache ImageService konvertiert ein Bild und markiert das Post-Meta-Feld
w3tc_imageservicedes Anhangs alsconverted. - Dieses Plugin erkennt diese Meta-Änderung und sucht alle Dateien, die W3TC für den Anhang erzeugt hat (Originalgröße und jede registrierte Thumbnail-Größe).
- Wenn W3TC eine der Zwischengrössen nicht erzeugt hat, generiert das Plugin sie selbst aus der bereits konvertierten WebP-Datei in Originalgrösse, damit eine einzelne, stillschweigend übersprungene Grösse nicht den gesamten Anhang auf Dauer blockiert.
- Es durchsucht
post_contentaller Beiträge sowie Widget-Instanzen und Theme-Mod-Einstellungen nach den alten URLs – in absoluter, wurzelrelativer und protokollrelativer Form – und ersetzt sie direkt in der Datenbank durch die.webp-Versionen. - Die eigenen Felder des Anhangs –
_wp_attached_file,_wp_attachment_metadataundpost_mime_type– werden aktualisiert, sodass sie auf die.webp-Dateien verweisen. - Wenn in den Einstellungen aktiviert, werden die Originaldateien (jpg/jpeg/png/gif) vom Datenträger gelöscht.
Voraussetzungen
- W3 Total Cache muss installiert und aktiviert sein.
- Bilder müssen über Medien W3TC Image Service konvertiert werden; dieses Plugin führt selbst keine Konvertierung durch.
Einschränkungen
Dieses Plugin konvertiert keine Bilder in WebP – die Konvertierung erfolgt vollständig durch den W3 Total Cache ImageService. Es reagiert erst, sobald W3TC ein Bild als konvertiert meldet.
Dieses Plugin unterstützt ausschließlich WebP. AVIF wird nicht unterstützt: W3 Total Cache bietet die AVIF-Konvertierung nur in der kostenpflichtigen Pro-Version an, und die ImageService-Integration dieses Plugins in der kostenlosen Version erhält ausschließlich WebP-Konvertierungen.
Inhalte, die ausserhalb von post_content, Widget-Instanzen und Theme-Mods gespeichert sind, werden nicht durchsucht – etwa die eigenen, in den Post-Meta-Daten gespeicherten Design-Daten eines Page-Builders (wie Elementor). Wird ein Bild ausschliesslich aus einer solchen Quelle referenziert, wird die URL dort nicht aktualisiert.
Das Löschen der Originalbilder ist dauerhaft und kann von diesem Plugin nicht rückgängig gemacht werden. Halten Sie Sicherungen bereit, bevor Sie die automatische Löschung aktivieren.
Installation
- Laden Sie den Ordner
sev-webp-migrator-for-w3tcin das Verzeichnis/wp-content/plugins/hoch. - Aktivieren Sie das Plugin über das Menü Plugins in WordPress.
- Stellen Sie sicher, dass W3 Total Cache installiert und aktiviert ist.
- Aktivieren Sie bei Bedarf „Originalbilder löschen“ unter Einstellungen WebP Migrator für W3TC.
- Für Bilder, die W3TC bereits vor der Aktivierung konvertiert hat, verwenden Sie das Werkzeug „Jetzt verarbeiten“ auf derselben Einstellungsseite.
FAQ
-
Konvertiert dieses Plugin Bilder in WebP?
-
Nein. Die Bildkonvertierung wird vollständig vom W3 Total Cache ImageService übernommen. Dieses Plugin ersetzt lediglich die URLs bereits konvertierter Bilder dauerhaft, überall dort, wo sie referenziert werden (siehe nächste Frage), sowie im Datensatz des Anhangs selbst.
-
Werden auch Widgets, Theme-Mod-Einstellungen oder Page-Builder-Inhalte aktualisiert?
-
Neben
post_contentwerden auch Widget-Instanzen (z. B. ein Custom-HTML/Text-Widget) und Theme-Mod-Einstellungen (z. B. ein Hintergrundbild im Customizer oder „Zusätzliches CSS“) aktualisiert. Inhalte, die an anderer Stelle gespeichert sind – etwa die eigenen Design-Daten eines Page-Builders (z. B. Elementor) –, werden nicht durchsucht; wird ein Bild ausschliesslich aus einer solchen Quelle referenziert, löschen Sie die Originaldateien mit Vorsicht. -
Ist das Löschen der Originalbilder sicher?
-
Eine Originaldatei wird erst gelöscht, nachdem bestätigt wurde, dass das zugehörige
.webp-Gegenstück auf der Festplatte vorhanden ist – und zwar erst, nachdem Beitragsinhalt, Widgets, Theme-Mods und der Anhang-Datensatz bereits aktualisiert wurden. Bei einem gerade erst hochgeladenen Bild wird die Löschung zusätzlich um eine kurze Schonfrist (standardmässig 15 Minuten) verzögert, um eine aktive Bearbeitungssitzung nicht zu stören. Die Löschung ist weiterhin endgültig und standardmässig deaktiviert – aktivieren Sie sie bewusst und bewahren Sie Backups auf. -
Funktioniert das Plugin mit WordPress-Multisite-Installationen?
-
Ja. Jede Website verarbeitet ihre eigenen Konvertierungen des W3 Total Cache ImageService unabhängig von den anderen.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“WebP-Migrator für W3TC” is open source software. The following people have contributed to this plugin.
Contributors“WebP-Migrator für W3TC” has been translated into 3 locales. Thank you to the translators for their contributions.
Translate “WebP-Migrator für W3TC” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
2.4.0
- Auf der Seite „Plugins“ wurden in der Zeile des Plugins ein Link „Support“ und ein Link zur Bewertung hinzugefügt.
2.3.0
- Behoben: Save_Listener (eingeführt in 2.1.0) schrieb den
<img>-Verweis einer Zwischengrösse auf eine nicht existierende URL um, wenn WordPress den Anhang beim Upload selbst automatisch skaliert hatte: W3TC benennt diese Zwischengrössen-WebP-Dateien nach der „-scaled“-Volldatei, nicht nach dem ursprünglichen Dateinamen der Grösse vor der Skalierung, sodass ein blindes Austauschen der Dateiendung den falschen Dateinamen erzeugte. Jede Grösse wird nun anhand der bereits migrierten Metadaten des Anhangs (abgeglichen über Breite × Höhe) aufgelöst, anstatt geraten zu werden.
2.2.0
- Behoben: Ein gerade erst hochgeladenes Bild wurde im Block-Editor als defektes Bild angezeigt, wenn seine Konvertierung abgeschlossen war (und bei aktivierter Option „Originalbilder löschen“ die Originaldatei gelöscht wurde), während es erst wenige Augenblicke zuvor eingefügt worden war – der Browser zeigte es noch über die ursprüngliche URL an. Die Löschung der Originaldateien eines Anhangs wird nun nach dem Upload um eine kurze Schonfrist verzögert (standardmässig 15 Minuten, filterbar über
sevwmfw3tc_deletion_grace_period) und nach deren Ablauf automatisch erneut versucht.
2.1.0
- Behoben: Eine zeitliche Lücke führte dazu, dass ein Bild, das in einen gerade bearbeiteten (noch nicht gespeicherten) Beitrag eingefügt wurde, während W3 Total Cache es im Hintergrund fertig konvertierte, nie korrigiert wurde: Der Anhang war zum Zeitpunkt des Speicherns bereits als konvertiert markiert, sodass weder der automatische Listener noch das manuelle Batch-Tool ihn erneut überprüften. Der Beitragsinhalt wird nun auch beim Speichern für
<img>-Tags korrigiert, die auf einen bereits konvertierten Anhang verweisen.
2.0.9
- Behoben: Anhänge blieben dauerhaft hängen, wenn ihre angehängte Datei bereits in .webp umbenannt worden war (z. B. durch eine zuvor unterbrochene Migration),
post_mime_typeaber nie entsprechend aktualisiert wurde, sodass das Plugin sie weiterhin als nicht konvertiert behandelte, ohne ein Umschreibungspaar für eine bereits vorhandene .webp-URL bilden zu können. Solche Anhänge werden nun erkannt und ihr MIME-Typ/ihre Metadaten werden korrigiert.
2.0.8
- Verbessert: Die Diagnosemeldung für Anhänge, die übersprungen wurden, weil keine brauchbare URL/Dateiendung gefunden wurde, unterscheidet nun, ob
wp_get_attachment_url()überhaupt nichts zurückgibt oder eine URL, deren Dateiendung nicht als konvertierbar erkannt wird – diese beiden Fälle weisen auf unterschiedliche zugrunde liegende Probleme hin, und die bisherige einzelne, allgemeine Meldung liess nicht erkennen, welcher Fall vorlag.
2.0.7
- Behoben: Originalbilddateien wurden gelöscht, obwohl sie noch von einem Widget (z. B. einem Custom-HTML/Text-Widget) oder einem Theme-Mod (z. B. einem Hintergrundbild im Customizer) referenziert wurden, da bislang nur
wp_posts.post_contentnach Verweisen durchsucht wurde. Beide werden nun ebenfalls geprüft und (sicher, über get_option()/update_option() statt eines einfachen String-Ersetzens, da ihre Werte serialisiert sind) umgeschrieben.
2.0.6
- Behoben: Originalbilddateien wurden gelöscht, obwohl sie noch aus Inhalten referenziert wurden, die eine wurzelrelative oder protokollrelative URL verwendeten (z. B.
url(/wp-content/uploads/...)im Feld „Zusätzliches CSS“ des Customizers), da nur nach der vollständigen absoluten URL gesucht und diese ersetzt wurde. Wurzelrelative und protokollrelative Varianten werden nun ebenfalls geprüft.
2.0.5
- Behoben: Anhänge blieben bei „0 Bilder verarbeitet“ hängen, obwohl ihr Beitragsinhalt erfolgreich auf funktionierende WebP-URLs umgeschrieben worden war. Attachment_Migrator sagte den WebP-Pfad eigenständig mit der älteren, einfacheren Logik erneut voraus, anstatt das vom Processor bereits ermittelte Ergebnis wiederzuverwenden (einschliesslich des 2.0.4-Fallbacks auf untergeordnete Anhänge), wodurch die Datei möglicherweise nicht gefunden wurde und der Anhang dauerhaft als nicht migriert markiert blieb.
2.0.4
- Behoben: Bilder blieben dauerhaft hängen, wenn die WebP-Datei in Originalgrösse am erwarteten Pfad fehlte, obwohl W3 Total Cache das Bild als „converted“ markiert hatte (z. B. nachdem ein späterer erneuter Konvertierungsvorgang sie gelöscht und ersetzt hatte). Das Plugin prüft nun zusätzlich den eigenen „untergeordneten Anhang“-Datensatz von W3TC für die konvertierte Datei, der unabhängig vom tatsächlichen Dateipfad auf der Festplatte massgeblich ist.
2.0.3
- Behoben: Der Batch „Zuvor konvertierte Bilder verarbeiten“ fand stillschweigend 0 zu verarbeitende Bilder (wobei die verbleibende Anzahl bei derselben Zahl stehen blieb und nichts protokolliert wurde), wenn Anhänge mit einem w3tc_imageservice-Status ungleich „converted“ nach ID zufällig vor konvertierten Anhängen einsortiert wurden. Der Status wird nun bereits auf Ebene der Datenbankabfrage gefiltert, statt erst nachdem das Batch-Grössenlimit bereits angewendet wurde.
2.0.2
- Behoben: Bilder blieben dauerhaft im Status „noch nicht verarbeitet“ hängen, wenn der ImageService von W3 Total Cache stillschweigend die Erzeugung einer Zwischengrösse überspringt (z. B. bei Website-Icon-Grössen, die nur in bestimmten Admin-Kontexten registriert sind). Die fehlende Grösse wird nun aus der bereits konvertierten WebP-Datei in Originalgrösse neu erzeugt, anstatt unbegrenzt auf ein Ereignis zu warten, das nie eintritt.
- Hinzugefügt: Eine Diagnoseprotokollierung (hinter WP_DEBUG_LOG), die erklärt, warum ein Bild während der Verarbeitung übersprungen wurde, um Batches zu diagnostizieren, die nicht vorankommen (die Anzeige „Noch N Bilder übrig“ bleibt bei derselben Zahl stehen).
2.0.1
- Getestet bis WordPress 7.1 und W3 Total Cache 2.10.2.
2.0.0
- Verbesserte Kompatibilität mit den Bildkonvertierungen des W3 Total Cache ImageService.
- Option hinzugefügt, um Originalbilder nach erfolgreicher Konvertierung automatisch zu löschen.
- Verschiedene Code-Verbesserungen.
1.0.0
- Erstveröffentlichung.



