¿Dónde está implementado el wp_head() por defecto?

24 mar 2011, 14:01:37
Vistas: 20.5K
Votos: 3

Estoy tratando de personalizar un tema y veo que el header.php llama a "wp_head()". No puedo encontrar una implementación de esto en el tema, así que presumo que hay una implementación por defecto que implementa, por ejemplo, la configuración de Opciones de Color como se especifica en la página de administración.

Así que mis preguntas relacionadas son:

  • ¿Hay algún lugar donde pueda ver esta implementación por defecto?
  • ¿Se puede "desactivar" esta implementación por defecto?
  • ¿Se puede deshabilitar la opción "Opciones de Color" en la pantalla de administración del tema?

Por favor, siéntase libre de dirigirme a la documentación relevante si eso sería más fácil. He consultado las páginas de referencia para la función wp_head() y el correspondiente gancho de acción wp_head, pero no parecen proporcionar suficiente información para abordar las preguntas anteriores.

Gracias.

0
Todas las respuestas a la pregunta 1
4

¿Hay algún lugar donde pueda ver esta implementación predeterminada?

La función wp_head() simplemente activa el gancho de acción wp_head que ejecuta todas las funciones de retorno (callbacks) que fueron añadidas a este gancho usando add_action('wp_head','callback_function'); Por lo tanto, no hay una implementación predeterminada.

¿Se puede "desactivar" esta implementación predeterminada?

Como mencionamos antes, dado que no hay una implementación predeterminada, necesitas encontrar los add_action que se enganchan a wp_head y eliminarlos usando remove_action. Por ejemplo, si este es el add_action:

add_action('wp_head','callback_function');

entonces para eliminarlo solo añade

remove_action('wp_head','callback_function');

¿Se puede desactivar la opción "Opciones de color" en la pantalla de administración del tema?

Supongo que tu tema tiene algún tipo de panel de opciones que te permite elegir las opciones de color, así que para desactivarlo depende del tema en sí, pero debería estar en uno de los archivos del tema. Saber de qué tema estás hablando ayudaría.

Actualización

Hay algunas acciones que se ejecutan por defecto cuando se dispara wp_head. Para eliminarlas solo usa:

remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wp_generator');
remove_action('wp_head', 'feed_links', 2);
remove_action('wp_head', 'index_rel_link');
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', 'feed_links_extra', 3);
remove_action('wp_head', 'start_post_rel_link', 10, 0);
remove_action('wp_head', 'parent_post_rel_link', 10, 0);
remove_action('wp_head', 'adjacent_posts_rel_link', 10, 0);

Aparte de eso, busca add_action('wp_head' ... en los archivos del tema y plugins.

24 mar 2011 14:41:37
Comentarios

gracias por las respuestas. Estoy probando el tema Twenty Ten, que venía incluido con el WordPress que descargué. Si busco con grep "wp_head", solo hay una ocurrencia: la llamada en header.php. No encuentro ningún "add_action('wp_head')". Sin embargo, algo parece ser llamado por wp_head(), ya que el HTML final incluye varios tags donde estaba wp_head(), incluyendo un estilo CSS para el body (implementando mi elección de color en la pantalla de administración). Así que supongo que mi pregunta es: ¿dónde está el código que hace esto y puedo evitarlo? Gracias.

User User
24 mar 2011 14:50:27

@ephemeral: actualicé mi respuesta

Bainternet Bainternet
24 mar 2011 15:04:56

@ephemeral: me alegra poder ayudar.

Bainternet Bainternet
24 mar 2011 15:16:39

Hermoso. Exactamente lo que necesitaba. Pude modificar la etiqueta <link ref="canonical" ... que WordPress genera automáticamente con la llamada wp_head() eliminando la función predeterminada que la muestra de esta manera: remove_action('wp_head','rel_canonical');. Luego registré la mía propia así: add_action('wp_head', 'my_custom_rel_canonical'); y agregué todo este código en la plantilla header.php porque necesito hacerlo allí en lugar del archivo functions.php habitual. Así que ahora sé que funciona bastante bien. Gracias Bainternet.

racl101 racl101
22 feb 2014 00:45:48