Home>Snippets>Eliminare l’immagine associata quando si elimina un articolo

Eliminare l’immagine associata quando si elimina un articolo


Eliminare l'immagine associata quando si elimina un articolo

Quante volte ti sarà capitato di inserire nuovi articoli in WordPress, con relativa immagine in evidenza associata e poi di dover cancellare, per un motivo o per un altro, questi stessi articoli? Sicuramente molto spesso!
Ti sarai accorto, forse, che quando elimini un articolo, l’immagine in evidenza associata, però, resta “in vita” sia nello spazio FTP, sia nel database di WordPress, sotto forma di post_type di tipo attachment, sprecando spazio per immagini che magari non verranno più utilizzate.

Ma niente paura: ecco un piccolo frammento di codice che ti permetterà di ovviare a tutto questo, cancellando definitivamente l’immagine in evidenza ogni qual volta ti appresti ad eliminare l’articolo a cui è associata.

  • Leggi l'articolo, ti bastano solo 2 minuti, 47 secondi
    Sei di fretta? Scarica il PDF e consultalo quando vuoi!

Il codice

È sufficiente inserire nel file functions.php del tema attivo, che trovi nello spazio FTP del tuo sito, in:

wp-content/themes/{nome_del_tema}/

la seguente funzione:

// Elimina l'immagine in evidenza associata quando si elimina un articolo
add_action( 'before_delete_post', function( $post_id ) {
    if ( has_post_thumbnail( $post_id ) ) {
      $attachment_id = get_post_thumbnail_id( $post_id );
      wp_delete_attachment( $attachment_id, true );
    }
}, 10 );

Ed il gioco è fatto! La funzione wp_delete_attachment() si occuperà non solo di eliminare i riferimenti all’immagine dal database insieme a tutti i metadata associati (titolo, didascalia, descrizione, testo alternativo), ma provvederà a cancellare definitivamente dal server anche il file fisico con tutte le thumbnails derivate, con un conseguente risparmio di spazio.



Ti è piaciuto questo articolo? Regalami un click per ripagarmi dello sforzo



Code4Life ti è stato utile? Sostienici con una donazione!

Dona con PayPal

Hai trovato interessante l’articolo? Allora ti consiglio di leggere:

Rimuovere l'auto-linking nei commenti di WordPress

Rimuovere l’auto-linking nei commenti di WordPress


Ecco un piccolo ma utilissimo snippet per rimuovere la funzione di WordPress che converte automaticamente url e indirizzi email in link cliccabili nei commenti.

Come salvare un'immagine remota sul proprio server con PHP

Come salvare un’immagine remota sul proprio server con PHP


Hai bisogno di scaricare un’immagine da un server remoto e salvarla nel tuo spazio FTP? Scopri come fare, utilizzando poche righe di codice PHP.


E tu cosa ne pensi? Condividi la tua opinione e discutiamone insieme
La tua email non sarà resa pubblico o utilizzata per inviarti spam, te lo prometto