Come forzare WordPress a mostrare la versione più recente delle immagini nella libreria multimediale?

22 feb 2011, 03:41:12
Visualizzazioni: 36.5K
Voti: 7

Il mio flusso di lavoro è talvolta il seguente:

  1. Eliminare molte immagini dalla libreria multimediale contemporaneamente (nominate per esempio, 01.jpg, 02.jpg, 03.jpg...).
  2. 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.

5
Commenti

Sei sicuro che non sia solo il tuo browser che memorizza nella cache le immagini? Hai premuto CTRL + F5?

t31os t31os
22 feb 2011 04:01:40

@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.

User User
22 feb 2011 19:51:15

Ho votato +1 entrambe le risposte attuali (con i miei ultimi due voti della giornata), usare una variabile di query è un buon metodo per evitare la cache.. :)

t31os t31os
22 feb 2011 20:04:29

Non esiste anche un plugin WP per forzare la rigenerazione delle miniature?

noel saw noel saw
23 feb 2011 03:18:18

Grazie a tutti.

Per quanto riguarda il front-end del CMS, sono a posto. Non c'è modo di invalidare la cache della galleria/media library senza modificare il core, giusto?

mod_expires potrebbe essere la mia migliore opzione.

User User
23 feb 2011 03:18:37
Tutte le risposte alla domanda 3
1

@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.

22 feb 2011 19:52:15
Commenti

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

NoBugs NoBugs
15 gen 2016 06:03:57
0

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.

22 feb 2011 19:58:40
1
-1

In realtà, è un problema di cache. Puoi cancellare la cache del browser per vedere le modifiche. Se stai utilizzando un plugin di cache nel tuo sito WordPress, devi cancellare anche quella.

25 nov 2021 08:20:25
Commenti

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.

Buttered_Toast Buttered_Toast
25 nov 2021 09:28:30