web-dev-qa-db-fra.com

Editer le thème wp_head

Mon wordpress rendait dans la tête des lots de scripts ou de fichiers CSS inutiles, j’ai essayé de résoudre ce problème en modifiant ma page head.php mais le thème que j’utilisais (zerif) utilise la fonction wp_head pour inclure tous les fichiers de script.

J'ai essayé de voir où je pouvais éditer la sortie de la fonction. J'ai jeté un œil à la documentation de wordpresss.

Ils ont dit que chaque thème spécifie ceci avec do_action("wp_head").

J'ai cherché cela sur mon code de thème mais je n'ai rien trouvé, alors comment puis-je l'éditer? Devrais-je tout coder sans utiliser wp_head()?

3
Marox Tn

Vous pouvez supprimer certains liens WP par défaut de head en utilisant remove_action(). Par exemple:

// Removes the wlwmanifest link
remove_action( 'wp_head', 'wlwmanifest_link' );
// Removes the RSD link
remove_action( 'wp_head', 'rsd_link' );
// Removes the WP shortlink
remove_action( 'wp_head', 'wp_shortlink_wp_head', 10, 0 );
// Removes the canonical links
remove_action( 'wp_head', 'rel_canonical' );
// Removes the links to the extra feeds such as category feeds
remove_action( 'wp_head', 'feed_links_extra', 3 ); 
// Removes links to the general feeds: Post and Comment Feed
remove_action( 'wp_head', 'feed_links', 2 ); 
// Removes the index link
remove_action( 'wp_head', 'index_rel_link' ); 
// Removes the prev link
remove_action( 'wp_head', 'parent_post_rel_link' ); 
// Removes the start link
remove_action( 'wp_head', 'start_post_rel_link' ); 
// Removes the relational links for the posts adjacent to the current post
remove_action( 'wp_head', 'adjacent_posts_rel_link' );
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head' );
// Removes the WordPress version i.e. -
remove_action( 'wp_head', 'wp_generator' );

Pour supprimer le support emoji (CSS et 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' );

Vous devez les utiliser dans votre fichier functions.php.

Pour éditer les fichiers mis en file d'attente par votre thème (zerif), vous devrez également éditer le fichier functions.php. Par exemple, vous trouverez quelque chose comme ceci:

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' );

Si vous ne le trouvez pas dans votre functions.php, c'est parce que certains thèmes divisent le contenu de functions.php en plusieurs fichiers, normalement inclus dans un dossier spécifique portant le nom inc, include ou framework. C'est facile à savoir: ces fichiers doivent être chargés dans votre functions.php. Par exemple:

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 );
1
Gerard