it-swarm.com.de

Wie erzwinge ich, dass Wordpress die aktuellste Version von Bildern in der Medienbibliothek anzeigt?

Mein Workflow ist manchmal der folgende:

  1. Löschen Sie mehrere Bilder gleichzeitig aus der Medienbibliothek (z. B. 01.jpg, 02.jpg, 03.jpg...).
  2. Laden Sie eine Reihe von Bildern mit demselben Dateinamen erneut hoch (01.jpg, 02.jpg, 03.jpg...).

In der Medienbibliothek werden die alten Bilder als Miniaturansichten und Vorschau angezeigt, auch wenn sie gelöscht wurden.

Dieses Problem lässt sich natürlich vermeiden, indem Sie Bilder mit unterschiedlichen Dateinamen hinzufügen. Ich habe mich jedoch gefragt, ob es einen besseren Weg gibt, der unabhängig von der Namenskonvention funktioniert. Oder noch etwas, das mir komplett fehlt?

Vielen Dank.

5
user3381

@ t31os Danke für deine Antwort. Ich bin sicher, es ist nur mein Browser, der die Bilder zwischenspeichert. Aber (ich hätte angeben sollen) ich bin nicht der einzige Benutzer. Ich würde es vorziehen, meine Benutzer nicht jedes Mal zum Aktualisieren auffordern zu müssen, wenn sie etwas löschen, oder die Schwierigkeit, eine Seitenaktualisierung als Teil des Löschens von Bildern einzurichten.

Aus diesem Grund haben wir Browser-Caching - um zu verhindern, dass bei jedem erneuten Aufruf dasselbe Bild geladen wird. Der Browser sieht es als das gleiche Bild.

Sie können dieses Problem umgehen, indem Sie das Bild folgendermaßen aufrufen: http://yoursite.com/images/01.jpg?v1 und http://yoursite.com/images/01.jpg?v2 - dies würde das gleiche Bild 2 mal laden.

4
stffn

Dies ist ein Problem mit dem Browser-Cache, nicht ein Problem mit der WordPress-Medienbibliothek. Der Grund, warum Sie die alten Bilder in der Mediengalerie sehen, ist, dass Sie denselben Dateinamen verwendet haben und Ihr Browser versucht, Zeit und Bandbreite zu sparen, indem Sie die bereits vorhandenen Versionen laden.

Es gibt zwei Möglichkeiten, um dieses Problem zu lösen.

Cache-Busting

Fügen Sie am Ende Ihrer Bildnamen eine Abfragevariable (?v=5) hinzu, wie sie im Front-End verwendet wird. Dies hat keine Auswirkungen auf die Mediengalerie, verhindert jedoch, dass im Front-End zwischengespeicherte Versionen alter Bilder angezeigt werden. Dies ist die gleiche Methode, die wir im WP Core verwenden, um den Browser zum erneuten Herunterladen aktualisierter JavaScript-Dateien zu zwingen.

mod_expires

Sie können Ihren Server (Apache) anweisen, ein benutzerdefiniertes "Ablaufdatum" und eine benutzerdefinierte "Ablaufzeit" für verschiedene Bilder festzulegen, entweder basierend auf der Erweiterung (alle JPG- oder PNG-Dateien) oder dem Dateinamen, wenn Sie wirklich detailliert werden möchten. Dies ist eher ein fortgeschrittener Trick, aber Sie können ihn verwenden, um den Cache jedes Benutzers sofort zu leeren, wenn Sie neue Bilder hochladen.

3
EAMann