Come forzare WordPress a mostrare la versione più recente delle immagini nella libreria multimediale?
Il mio flusso di lavoro è talvolta il seguente:
- Eliminare molte immagini dalla libreria multimediale contemporaneamente (nominate per esempio,
01.jpg
,02.jpg
,03.jpg
...). - Ricaricare una serie di immagini con gli stessi nomi file (
01.jpg
,02.jpg
,03.jpg
...).
La libreria multimediale mantiene e mostra le vecchie immagini come miniature e anteprime, anche se sono state eliminate.
Ovviamente questo problema è evitabile aggiungendo immagini con nomi file diversi, ma mi chiedevo se ci fosse un modo migliore che funzioni indipendentemente dalla convenzione di denominazione. O qualcos'altro che mi sta completamente sfuggendo?
Grazie.

@t31os Grazie per la tua risposta. Sono sicuro che sia solo il mio browser che memorizza nella cache le immagini. Ma (avrei dovuto specificarlo) non sono l'unico utente. Preferirei non dover dire ai miei utenti di aggiornare ogni volta che eliminano qualcosa o la goffaggine di integrare un aggiornamento della pagina come parte dell'eliminazione dell'immagine.
Ma è proprio per questo che abbiamo la cache del browser - per evitare che la stessa immagine venga caricata ogni volta che la richiamiamo. Il browser la vede come la stessa immagine.
Puoi creare un piccolo stratagemma richiamando l'immagine così: http://yoursite.com/images/01.jpg?v1 e http://yoursite.com/images/01.jpg?v2 - questo caricherebbe la stessa immagine 2 volte.

Sì, infatti questo è il trucco che WP utilizza con gli enqueue quando specifichi una versione di script/style: https://codex.wordpress.org/Function_Reference/wp_enqueue_script

Questo è un problema di cache del browser, non un problema della libreria multimediale di WordPress. Il motivo per cui vedi le vecchie immagini nella galleria multimediale è perché hai utilizzato lo stesso nome file e il tuo browser sta cercando di risparmiare tempo e larghezza di banda caricando le versioni che già possiede.
Ci sono due modi per risolvere questo problema.
Cache Busting
Aggiungi una variabile di query (?v=5
) alla fine dei nomi delle immagini utilizzati sul front-end. Questo non influenzerà la galleria multimediale... ma impedirà alle persone di vedere versioni memorizzate nella cache delle vecchie immagini sul front-end. Per riferimento, questo è lo stesso metodo che utilizziamo nel core di WP per forzare il browser a scaricare nuovamente i file JavaScript aggiornati.
mod_expires
Puoi dire al tuo server (Apache) di impostare una data e un'ora di "scadenza" personalizzate per diverse immagini, sia in base all'estensione (tutti i file jpg o png) che al nome del file, se vuoi essere molto preciso. Questo è un trucco più avanzato, ma puoi utilizzarlo per svuotare immediatamente la cache di tutti ogni volta che carichi nuove immagini.
- Come Impostare un Intestazione Expires in Apache (usando
ExpiresByType
) - Riferimento al Modulo Apache mod_expires

Benvenuto su wpse! In cosa questa risposta è diversa da quella di @EAMann? Sembra esattamente la stessa risposta ma con meno informazioni. Se è diversa, per favore considera di aggiungere maggiori dettagli. Nella forma attuale, questa è una copia della risposta di @EAMann.
