Editar wp_head del tema de WordPress
Mi WordPress renderiza en la etiqueta head muchos scripts y archivos CSS innecesarios. Intenté arreglar esto editando mi archivo head.php
, pero el tema que estaba usando (zerif
) utiliza la función wp_head
para incluir todos los archivos de scripts.
Intenté ver dónde podría editar la salida de la función y revisé la documentación de WordPress
Mencionan que cada tema especifica esto con do_action("wp_head")
.
Busqué eso en el código de mi tema pero no encontré nada, entonces ¿cómo puedo editarlo?
¿Debería codificar todo manualmente sin usar wp_head()
?
Puedes eliminar algunos enlaces predeterminados de WP en el head
utilizando remove_action()
. Por ejemplo:
// Elimina el enlace wlwmanifest
remove_action( 'wp_head', 'wlwmanifest_link' );
// Elimina el enlace RSD
remove_action( 'wp_head', 'rsd_link' );
// Elimina el shortlink de WP
remove_action( 'wp_head', 'wp_shortlink_wp_head', 10, 0 );
// Elimina los enlaces canónicos
remove_action( 'wp_head', 'rel_canonical' );
// Elimina los enlaces a feeds adicionales como los feeds de categoría
remove_action( 'wp_head', 'feed_links_extra', 3 );
// Elimina los enlaces a feeds generales: Feed de entradas y comentarios
remove_action( 'wp_head', 'feed_links', 2 );
// Elimina el enlace de índice
remove_action( 'wp_head', 'index_rel_link' );
// Elimina el enlace previo
remove_action( 'wp_head', 'parent_post_rel_link' );
// Elimina el enlace de inicio
remove_action( 'wp_head', 'start_post_rel_link' );
// Elimina los enlaces relacionales para las entradas adyacentes a la entrada actual
remove_action( 'wp_head', 'adjacent_posts_rel_link' );
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head' );
// Elimina la versión de WordPress, es decir -
remove_action( 'wp_head', 'wp_generator' );
Para eliminar el soporte de emojis (CSS y 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' );
Debes utilizarlos en tu archivo functions.php
.
Para editar los archivos encolados por tu tema (zerif) necesitarás editar también el archivo functions.php
. Por ejemplo, encontrarás algo como esto:
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 no lo encuentras en tu functions.php
, es porque algunos temas dividen el contenido de functions.php
en varios archivos, normalmente incluidos en una carpeta específica con el nombre inc
, include
o framework
. Eso es fácil de saber: estos archivos deben cargarse en tu functions.php
. Por ejemplo:
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 );
