Le immagini nella libreria multimediale sono improvvisamente scomparse
Ho un blog WordPress e andava tutto bene finché un giorno improvvisamente tutte le immagini del sito sono scomparse...
Vedo che le immagini sono presenti nella cartella wp-content/uploads/ nelle loro specifiche directory (mese e anno) ma non è visibile nulla nella libreria multimediale
Ho anche notato che tutte le pagine e i post sono stati convertiti in bozze. Li ho ripubblicati ma non riesco ancora ad accedere alle immagini nella libreria multimediale..
In impostazioni/media/
Ho selezionato l'opzione
Organizza i miei file caricati in cartelle basate su mese e anno
ma non vedo l'opzione per inserire il percorso della cartella uploads..
Spero che qualcuno possa aiutarmi a identificare il bug e risolverlo..
Grazie in anticipo

I due problemi che descrivi potrebbero essere correlati. Gli allegati (immagini) sono memorizzati come post nel database (così titolo, didascalia e così via possono essere memorizzati in relazione al file fisico dell'immagine). È questo post che vedi nella libreria media.
Normalmente, il post_status
degli allegati è inherit
. Tuttavia, se il post_status
è impostato come draft
il post non sarà più visibile nella libreria media, anche se il file fisico è ancora presente e il titolo/didascalia è ancora memorizzato nel database.
Quindi, la mia ipotesi è che un malware o un plugin malintenzionato/mal programmato abbia impostato tutti i tuoi post_status
su draft
. Per verificarlo, dovresti aprire il tuo PHP Admin e controllare la colonna post_status
nella tabella _posts
del tuo database. Se non ci sono molte immagini puoi cambiare manualmente il post_status
per far riapparire i post delle immagini nella libreria (prova almeno con uno per verificare se questo risolve il problema). Altrimenti dovrai eseguire una query SQL sulla tabella.

A meno che non abbia aggiornato WordPress da molto tempo, non avresti comunque potuto modificare la cartella di upload tramite il Pannello di controllo. Questa funzionalità è stata rimossa nella versione 3.5, se non erro.
Prima di tutto, fai un backup completo (la tua installazione di WordPress, in particolare tutto ciò che si trova in wp-content
, e il tuo database). Ora ciò che puoi fare è:
Controlla il tuo wp-config.php
Cerca una riga simile a
define( 'UPLOADS', 'wp-content\percorso );
. Questo è l'unico modo per modificare la directory dei media nelle versioni più recenti di WordPress.Se trovi un codice del genere, prova a eliminarlo da
wp-config.php
.
Installa l'ultima versione di WordPress
- Scarica il file zip da WordPress.org.
- Copia il file zip nella tua directory di WordPress.
- Sposta fuori il file
wp-config.php
. - Elimina tutto nella tua directory di WordPress tranne la cartella
wp-content
. - Estrai il file scaricato da WordPress.org. Vedrai una nuova cartella chiamata
wordpress
. Copia tutto da lì nella tua directory originale di WordPress. - Rimetti il tuo
wp-config.php
al suo posto.
Chiedi al tuo host di ripristinare il sito a uno stato precedente
Questa è l'ultima risorsa. Chiedi semplicemente al tuo host se può ripristinare il tuo sito a un momento precedente a quando hai notato il problema di accesso alle immagini.
Qualunque cosa decidi di fare, puoi sempre ripristinare i tuoi backup nel caso in cui qualcos'altro vada storto.
Buona fortuna!

Condivido una soluzione che ho trovato quando le immagini nella libreria multimediale non venivano visualizzate: potevo ancora vedere i nomi e cliccare sul pulsante di modifica, ma vedevo solo un piccolo quadrato blu e nessuna immagine, nonostante fossero presenti sul server. La soluzione che ha funzionato per me è stata installare un plugin per rigenerare le miniature e, dopo aver rigenerato le immagini, tutte sono ricomparse nella libreria multimediale. Non so se questo è il problema che stai riscontrando, dato che nel mio caso non erano impostate come bozze, ma ho pensato di condividerlo nel caso qualcun altro si imbatta in questa situazione e trovi utile questa soluzione.

Ho trovato la soluzione.
Per impostazione predefinita, il plugin Polylang abilita il supporto multilingue per i media. Questa opzione dovrebbe essere disattivata. Puoi farlo deselezionando l'opzione 'Attiva lingue e traduzioni per i media' nella sezione delle impostazioni del plugin Polylang.

La stessa cosa è successa a me, era dovuta ad alcuni plugin che avevo installato, ho rimosso tutti i plugin aggiunti di recente e poi tutto ha funzionato correttamente.
Se ancora non funziona, aggiungi questa riga: define( 'UPLOADS', 'wp-content/uploads' );
alla fine del file wp-config.php
.
