Come caricare file SVG in WordPress

Sapevi che WordPress, di default, non permette l’upload di file SVG? Probabilmente sì, dal momento che il loro utilizzo sta diventando sempre più popolare!
Scopriamo come abilitarne l’utilizzo nel nostro sito in WordPress, aggiungendo il supporto SVG a WordPress.
- Leggi l'articolo, ti bastano solo 2 minuti, 25 secondi
Sei di fretta? Scarica il PDF e consultalo quando vuoi!
Una doverosa premessa
Ma per quale motivo WordPress non consente di default l’inserimento dei file in formato SVG?
Il motivo è legato ad alcune vulnerabilità che il tipo di file potrebbe far venire a galla. Prima di proseguire, bisogna dunque chiedersi:
Ora che hai tutte le informazioni teoriche per decidere cosa fare, passiamo alla pratica: come inserire file SVG in WordPress!
Il codice
Inserisci nel file functions.php del tema attivo, che trovi nello spazio FTP del tuo sito, in:
wp-content/themes/{nome_del_tema}/
le seguenti linee di codice:
// Aggiunge il supporto all'upload dei file in formato SVG add_filter( 'upload_mimes', function ( $mimes = array() ) { $mimes['svg'] = 'image/svg+xml'; return $mimes; } );
Da questo momento, WordPress ti permetterà l’upload dei file in formato SVG nella libreria media.
Ovviamente, puoi utilizzare questo snippet per aggiungere a WordPress il supporto anche ad altri formati di file non accettati di default, consentendoti di effettuarne l’upload.
Una precisazione
Hai imparato ad inserire file SVG in WordPress, ma c’è una piccola precisazione da fare: con la versione 4.7.1, lo snippet precedente non compie il proprio dovere. Come fare?
Niente paura, c’è una soluzione anche per questo!
Ti basta inserire un ulteriore snippet nel file functions.php del tema attivo il seguente codice:
// Aggiunge il supporto all'upload dei file in formato SVG nella versione 4.7.1 di WordPress add_filter( 'wp_check_filetype_and_ext', function( $data, $file, $filename, $mimes ) { global $wp_version; if ( $wp_version !== '4.7.1' ) { return $data; } $filetype = wp_check_filetype( $filename, $mimes ); return [ 'ext' => $filetype['ext'], 'type' => $filetype['type'], 'proper_filename' => $data['proper_filename'] ]; }, 10, 4 );
ed il gioco è fatto!
Un ulteriore metodo, fortemente sconsigliato per motivi di sicurezza, è disabilitare il controllo che blocca il controllo dei formati dei files in fase di upload nel backend di WordPress.
Ma se sei un vero temerario ed il rischio di compromettere la sicurezza del tuo WordPress non ti preoccupa, inserisci nel file wp-config.php nella root del tuo sito, il seguente codice:
// Permetti l'upload di files non filtrati per gli amministratori define( 'ALLOW_UNFILTERED_UPLOADS', true );
In questo modo, non solo aggiungi il supporto SVG a WordPress, ma permetti l’upload di qualsiasi formato di file, ovviamente limitato al backend.
Per un approfondimento sui di file supportati, ti consiglio di leggere la documentazione a riguardo sul Codex di WordPress: