Chi Siamo Area Clienti Promo del Mese Dicono di Noi Portfolio FAQ Blog
Senza categoria

Snippet PHP Utili per WordPress da Inserire con WPCode

· 9 min di lettura

Il Potere degli Snippet PHP in WordPress

PHP è il linguaggio di programmazione su cui è costruito WordPress. Ogni funzionalità del CMS — dalla gestione dei contenuti alla visualizzazione delle pagine — è governata da codice PHP. Tradizionalmente, per personalizzare il comportamento di WordPress era necessario modificare il file functions.php del tema, un’operazione rischiosa che poteva causare errori critici e che veniva annullata a ogni aggiornamento del tema.

WPCode cambia completamente questo paradigma. Grazie alla possibilità di eseguire snippet PHP dalla dashboard di WordPress, puoi aggiungere funzionalità, modificare comportamenti e ottimizzare il tuo sito senza mai toccare un file del tema. In questo articolo ti presentiamo una raccolta di snippet PHP pronti all’uso che puoi inserire con WPCode per migliorare il tuo sito WordPress.

Libreria di snippet PHP personalizzati in WPCode

Come Inserire Snippet PHP con WPCode

Prima di procedere con gli snippet, ecco il procedimento standard per inserire codice PHP con WPCode:

  1. Vai su Code Snippets → Add Snippet → Add Your Custom Code
  2. Seleziona PHP Snippet come tipo di codice
  3. Inserisci il codice PHP nell’editor (senza i tag <?php ?>, WPCode li aggiunge automaticamente)
  4. In “Insertion”, seleziona Auto Insert → Run Everywhere (a meno che lo snippet non richieda una posizione specifica)
  5. Attiva e salva

Attenzione: gli snippet PHP vengono eseguiti lato server. Un errore nel codice può rendere il sito inaccessibile. WPCode include un sistema di protezione che disattiva automaticamente gli snippet problematici, ma è sempre buona pratica testare il codice prima di attivarlo.

Snippet 1: Disabilitare le Emoji di WordPress

WordPress carica automaticamente script e stili per le emoji su ogni pagina. Se non usi le emoji native di WordPress (la maggior parte dei browser le supporta già), puoi rimuovere questi file per migliorare le prestazioni:

remove_action( wp_head, print_emoji_detection_script, 7 );
remove_action( admin_print_scripts, print_emoji_detection_script );
remove_action( wp_print_styles, print_emoji_styles );
remove_action( admin_print_styles, print_emoji_styles );
remove_filter( the_content_feed, wp_staticize_emoji );
remove_filter( comment_text_rss, wp_staticize_emoji );
remove_filter( wp_mail, wp_staticize_emoji_for_email );

Questo snippet rimuove tutti gli hook relativi alle emoji, sia nel frontend che nel pannello di amministrazione. Il risparmio in termini di prestazioni è modesto ma misurabile, specialmente su siti con molte pagine.

Snippet 2: Rimuovere la Versione di WordPress dall’Header

Per impostazione predefinita, WordPress inserisce un meta tag nell’header che rivela la versione installata. Questo può essere un rischio di sicurezza perché i malintenzionati possono cercare vulnerabilità note per quella versione specifica:

remove_action( wp_head, wp_generator );

Con una sola riga di codice, il meta tag <meta name="generator" content="WordPress X.X" /> viene rimosso dall’header del sito.

Snippet 3: Disabilitare XML-RPC

XML-RPC è un protocollo legacy utilizzato per la comunicazione remota con WordPress. La maggior parte dei siti moderni non ne ha bisogno, e lasciarlo attivo espone il sito a potenziali attacchi brute force:

add_filter( xmlrpc_enabled, __return_false );

Questo snippet disabilita completamente XML-RPC. Se usi app mobile per pubblicare contenuti o servizi che richiedono XML-RPC, non attivare questo snippet.

Snippet 4: Limitare le Revisioni dei Post

WordPress salva una revisione ogni volta che modifichi un post o una pagina. Con il tempo, il database si riempie di centinaia di revisioni che occupano spazio e rallentano le query. Questo snippet limita il numero di revisioni a 5:

if ( ! defined( WP_POST_REVISIONS ) ) {
    define( WP_POST_REVISIONS, 5 );
}

Puoi cambiare il numero 5 con qualsiasi valore desideri. Impostando il valore a 0 disabiliti completamente le revisioni (sconsigliato, è meglio mantenerne almeno 3-5 per sicurezza).

Configurazione degli snippet PHP nelle impostazioni di WPCode

Snippet 5: Disabilitare i Commenti Globalmente

Se il tuo sito non necessita della funzionalità dei commenti (ad esempio, è un sito vetrina o un portfolio), puoi disabilitarli completamente:

// Disabilita il supporto ai commenti per tutti i post type
add_action( admin_init, function() {
    $post_types = get_post_types();
    foreach ( $post_types as $post_type ) {
        if ( post_type_supports( $post_type, comments ) ) {
            remove_post_type_support( $post_type, comments );
            remove_post_type_support( $post_type, trackbacks );
        }
    }
});

// Chiudi i commenti nel frontend
add_filter( comments_open, __return_false, 20, 2 );
add_filter( pings_open, __return_false, 20, 2 );

// Nascondi il conteggio dei commenti esistenti
add_filter( comments_array, __return_empty_array, 10, 2 );

// Rimuovi la voce Commenti dal menu admin
add_action( admin_menu, function() {
    remove_menu_page( edit-comments.php );
});

Questo snippet è completo: disabilita i commenti su tutti i tipi di post, chiude la possibilità di commentare nel frontend, nasconde il conteggio e rimuove la voce dal menu di amministrazione.

Snippet 6: Aggiungere un Messaggio Personalizzato Dopo il Contenuto

Vuoi aggiungere automaticamente un messaggio o un invito all’azione (CTA) alla fine di ogni post del blog? Ecco come fare:

add_filter( the_content, function( $content ) {
    if ( is_single() && ! is_admin() ) {
        $cta = <div style="background:#f0f6fc; border-left:4px solid #0073aa; padding:15px; margin:20px 0;">;
        $cta .= <p><strong>Ti è piaciuto questo articolo?</strong> Iscriviti alla nostra newsletter per ricevere contenuti esclusivi direttamente nella tua casella email.</p>;
        $cta .= </div>;
        $content .= $cta;
    }
    return $content;
});

Lo snippet utilizza il filtro the_content per aggiungere il CTA solo ai post singoli (is_single()) e solo nel frontend (! is_admin()).

Snippet 7: Reindirizzare gli Utenti Dopo il Login

Per impostazione predefinita, dopo il login WordPress reindirizza alla dashboard. Se vuoi reindirizzare gli utenti a una pagina specifica (ad esempio la homepage o il loro profilo):

add_filter( login_redirect, function( $redirect_to, $request, $user ) {
    if ( isset( $user->roles ) && is_array( $user->roles ) ) {
        if ( in_array( administrator, $user->roles ) ) {
            return admin_url(); // Gli admin vanno alla dashboard
        } else {
            return home_url(); // Gli altri utenti vanno alla homepage
        }
    }
    return $redirect_to;
}, 10, 3 );

Questo snippet differenzia il reindirizzamento in base al ruolo dell’utente: gli amministratori vanno alla dashboard, tutti gli altri alla homepage.

Snippet 8: Aggiungere Immagine in Evidenza alla Colonna dei Post

Per avere un’anteprima visiva nella lista dei post nella dashboard:

// Aggiungi la colonna
add_filter( manage_posts_columns, function( $columns ) {
    $new_columns = array();
    foreach ( $columns as $key => $value ) {
        if ( $key === title ) {
            $new_columns[featured_thumb] = Immagine;
        }
        $new_columns[$key] = $value;
    }
    return $new_columns;
});

// Popola la colonna con la thumbnail
add_action( manage_posts_custom_column, function( $column, $post_id ) {
    if ( $column === featured_thumb ) {
        if ( has_post_thumbnail( $post_id ) ) {
            echo get_the_post_thumbnail( $post_id, array(50, 50) );
        } else {
            echo —;
        }
    }
}, 10, 2 );

Snippet 9: Disabilitare l’Editor Gutenberg

Se preferisci l’editor classico di WordPress, puoi disabilitare Gutenberg con un semplice snippet:

add_filter( use_block_editor_for_post, __return_false, 10 );
add_filter( use_block_editor_for_post_type, __return_false, 10 );

Questo snippet ripristina l’editor classico per tutti i tipi di post. Se vuoi disabilitare Gutenberg solo per le pagine ma mantenerlo per i post, puoi aggiungere una condizione sul post type.

Snippet 10: Personalizzare il Footer dell’Admin

Puoi personalizzare il testo nel footer del pannello di amministrazione, ad esempio per mostrare il nome della tua agenzia:

add_filter( admin_footer_text, function() {
    return Sviluppato con &hearts; da <a href="https://gtechgroup.it" target="_blank">G Tech Group</a>;
});

Dashboard WordPress personalizzata con snippet PHP di WPCode

Snippet 11: Aggiungere Supporto SVG

WordPress non permette il caricamento di file SVG per motivi di sicurezza. Se hai bisogno di caricare SVG nella libreria media:

add_filter( upload_mimes, function( $mimes ) {
    $mimes[svg] = image/svg+xml;
    $mimes[svgz] = image/svg+xml;
    return $mimes;
});

Nota di sicurezza: i file SVG possono contenere codice JavaScript malevolo. Abilita il supporto SVG solo se ti fidi delle fonti dei file che carichi, e considera l’installazione di un plugin di sanitizzazione SVG per maggiore sicurezza.

Snippet 12: Aumentare il Limite di Memoria PHP

Se il tuo sito mostra errori di memoria insufficiente, puoi aumentare il limite direttamente da WPCode:

if ( ! defined( WP_MEMORY_LIMIT ) ) {
    define( WP_MEMORY_LIMIT, 256M );
}
if ( ! defined( WP_MAX_MEMORY_LIMIT ) ) {
    define( WP_MAX_MEMORY_LIMIT, 512M );
}

Questo snippet imposta il limite di memoria a 256 MB per il frontend e 512 MB per il pannello di amministrazione. Il limite effettivo dipende anche dalla configurazione del server.

Snippet 13: Disabilitare gli Aggiornamenti Automatici

Se preferisci gestire gli aggiornamenti manualmente per evitare problemi di compatibilità:

// Disabilita aggiornamenti automatici del core
add_filter( auto_update_core, __return_false );

// Disabilita aggiornamenti automatici dei plugin
add_filter( auto_update_plugin, __return_false );

// Disabilita aggiornamenti automatici dei temi
add_filter( auto_update_theme, __return_false );

Importante: se disabiliti gli aggiornamenti automatici, assicurati di eseguire gli aggiornamenti manualmente con regolarità. Le versioni obsolete di WordPress, plugin e temi possono contenere vulnerabilità di sicurezza.

Precauzioni e Sicurezza

Quando lavori con snippet PHP in WPCode, tieni presente queste precauzioni fondamentali:

Conclusioni

Gli snippet PHP che abbiamo visto in questo articolo coprono le personalizzazioni più comuni e utili per WordPress. Grazie a WPCode, inserirli è semplice e sicuro: non devi modificare alcun file del tema e puoi attivare o disattivare ogni snippet con un clic.

Ricorda che questa è solo una selezione degli snippet più utilizzati. Le possibilità con PHP e WordPress sono virtualmente infinite: puoi personalizzare qualsiasi aspetto del tuo sito, dall’interfaccia utente alle funzionalità backend.

📚 Leggi anche gli altri articoli della serie WPCode

Hai bisogno di snippet PHP personalizzati per il tuo sito WordPress? Contatta il team di G Tech Group. I nostri sviluppatori WordPress possono creare funzionalità su misura per le tue esigenze, dalla semplice personalizzazione dell’interfaccia a integrazioni complesse con servizi esterni.

Migliora il Tuo Sito WordPress

Scopri le nostre guide complete sugli altri plugin essenziali per WordPress:

#Funzioni #personalizzazione #PHP #Snippet #Wordpress #WPCode