Modificare wp_head del tema WordPress
Il mio WordPress inserisce nel tag head molti script e file CSS non necessari. Ho provato a risolvere questo modificando il file head.php
, ma il tema che stavo utilizzando (zerif
) usa la funzione wp_head
per includere tutti i file degli script.
Ho cercato di capire dove poter modificare l'output della funzione consultando la documentazione di WordPress.
Nella documentazione si dice che ogni tema specifica questo con do_action("wp_head")
.
Ho cercato questa stringa nel codice del mio tema ma non ho trovato nulla, quindi come posso modificarla?
Dovrei codificare tutto manualmente senza usare wp_head()
?

Puoi rimuovere alcuni link predefiniti di WP nell'elemento head
utilizzando remove_action()
. Ad esempio:
// Rimuove il link wlwmanifest
remove_action( 'wp_head', 'wlwmanifest_link' );
// Rimuove il link RSD
remove_action( 'wp_head', 'rsd_link' );
// Rimuove il shortlink di WP
remove_action( 'wp_head', 'wp_shortlink_wp_head', 10, 0 );
// Rimuove i link canonici
remove_action( 'wp_head', 'rel_canonical' );
// Rimuove i link ai feed extra come i feed delle categorie
remove_action( 'wp_head', 'feed_links_extra', 3 );
// Rimuove i link ai feed generali: Feed degli articoli e dei commenti
remove_action( 'wp_head', 'feed_links', 2 );
// Rimuove il link all'indice
remove_action( 'wp_head', 'index_rel_link' );
// Rimuove il link prev
remove_action( 'wp_head', 'parent_post_rel_link' );
// Rimuove il link start
remove_action( 'wp_head', 'start_post_rel_link' );
// Rimuove i link relazionali per gli articoli adiacenti a quello corrente
remove_action( 'wp_head', 'adjacent_posts_rel_link' );
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head' );
// Rimuove la versione di WordPress (es. -)
remove_action( 'wp_head', 'wp_generator' );
Per rimuovere il supporto agli emoji (CSS e Javascript):
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' );
Devi utilizzarli nel tuo file functions.php
.
Per modificare i file caricati dal tuo tema (zerif) dovrai modificare anche il file functions.php
. Ad esempio, troverai qualcosa come questo:
wp_enqueue_style( 'style', get_stylesheet_uri() );
wp_enqueue_style( 'shortcodes', get_template_directory_uri() . '/css/shortcodes.css' );
wp_enqueue_style( 'font-awesome', get_template_directory_uri() . '/css/font-awesome.css' );
wp_enqueue_script( 'jquery' );
Se non lo trovi nel tuo functions.php
, è perché alcuni temi dividono il contenuto di functions.php
in più file, solitamente inclusi in una cartella specifica con il nome inc
, include
o framework
. È facile da capire: questi file devono essere caricati nel tuo functions.php
. Ad esempio:
locate_template( 'inc/widgets.php', true, true );
locate_template( 'inc/sidebars.php', true, true );
locate_template( 'inc/breadcrumbs.php', true, true );
locate_template( 'inc/whatever.php', true, true );
