Oferta SiteGround Black Friday

Cómo funciona la etiqueta de título de WordPress

WordPress 4.1 introdujo un nuevo modo de añadir etiquetas de título en los temas. En vez de escribir código a pelo las tags  <title> con WP_title(), una llamada a add_theme_support( 'title-tag' ) ofrecía el código necesario en la cabecera de la página. Esto se lograba gracias a la función privada _WP_render_title_tag() enlazada a wp_head.

WordPress 4.4 ha dado un paso adelante en la hoja de ruta hacia una gestión más flexible de los títulos de documentos, introduciendo una nueva función WP_get_document_title() que devuelve el título de la página actual.

Esta función se usa ahora mediante _WP_render_title_tag() en vez de con WP_title():

function _wp_render_title_tag() {
if ( ! current_theme_supports( 'title-tag' ) ) {
return;
}
echo '<title>' . wp_get_document_title() . '</title>' . "\n";
}

Esto significa que si añades compatibilidad con la etiqueta de título a tu tema, y usas el filtro WP_title para modificar la visualización del título ya no funcionará en WordPress.

Esto es debido a que WP_get_document_title() usa sus propios filtros para modificar la visualización:

  • pre_get_document_title: Usando este filtro se consigue que deje de funcionar WP_get_document_title() antes de que se lance, y se devuelve la cadena facilitada.
  • document_title_separator: Este filtro se puede usar para filtrar el separador que se suele usar entre las distintas partes de un título. El separador por defecto es un guión (-). Además, WordPress añade espacios alrededor del separador en una parte posterior de la función, así que al final será ( – ).
  • document_title_parts: Este filtro se aplica más adelante en WP_get_document_title(). Manda un array asociativo que contiene las distintas partes del título. Siempre se establece la clave del título, sea cual sea la página, y la descripción y las palabras clave del sitio solo se definen en contextos concretos.

En la entrada en la que se habló por primera vez de esta característica en el blog de Make/Core se mencionaba en concreto que estos filtros eran para su uso en plugins.

En los temas lo único necesario es declarar la compatibilidad con las etiquetas de título, dejando la creación y visualización del título a WordPress y los plugins.

La idea es que se incorpore en futuras versiones de WordPress una interfaz de usuario que permita al usuario modificar la visualización del título.

Como bien comentó algún usuario del blog hace unos días, con el lanzamiento de WordPress 4.4, en principio se marcó como obsoleta la etiqueta WP_title(), pero más adelante se reincorporó al desarrollo de WordPress 4.4.

Aunque es verdad que es mejor que no se haya marcado como obsoleta (aún), es totalmente recomendable adaptar cuanto antes tu tema al nuevo código para asegurarte de que todo funcionará en un futuro (cercano). El SEO es importante y estas etiquetas afectan directamente al posicionamiento de tu web WordPress.

Si quieres actualizar tu tema a la nueva forma de gestionar el título, recuerda que lo único que debes hacer si usas ya WordPress 4.4 o superior es añadir lo siguiente al archivo functions.php de tu tema:

add_theme_support( 'title-tag' );

WordPress se ocupa de hacer el resto internamente cuando encuentre en la cabecera (header.php) la etiqueta <title>.


Referencias:

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en los emoticonos para valorarlo!

Promedio de puntuación 4.8 / 5. Total de votos: 6

Hasta ahora ¡no hay votos!. Sé el primero en valorar este contenido.

Ya que has encontrado útil este contenido...

¡Sígueme en las redes sociales!

¡Siento que este contenido no te haya sido útil!

¡Ayúdame a mejorar este contenido!

Por favor, dime, ¿cómo puedo mejorarlo?

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

AVISO: Esta publicación es de hace 3 años o más. Si es un código o un plugin podría no funcionar en las últimas versiones de WordPress, y si es una noticia podría estar ya obsoleta. Luego no digas que no te hemos avisado. ¡Ah! ¿te funciona? pues entonces no he dicho nada :)

Sobre el autor

6 comentarios en “Cómo funciona la etiqueta de título de WordPress”

  1. Pues ahora sí que no entiendo nada. ¿Qué es exactamente lo que hay que añadir a los temas? ¿Es necesario añadir en el archivo functions.php el soporte para «title-tag»? Es decir, ¿hay que añadir `add_theme_support( ‘title-tag’ );`? ¿Y luego? ¿en head ya nada?
    ¿Podrías, por favor, explicarlo un poco más detalladamente?

      1. Gracias por la aclaración. Queda bastante más claro pero aún hay un punto que puede llevar a dudas. Dices … «cuando encuentre en la cabecera (header.php) la etiqueta »
        ¿Significa eso que debemos dejar como tengamos puesta ahora la etiqueta Title en el header?

        1. Igual llego tarde para responder pero… yo eliminé de header.php y agregue la linea add_theme_support( ‘title-tag’ ) a functions.php y todo OK.

          La verdad es que es bastante liosa la explicación, y esa última linea del artículo creo que no tiene mucho sentido.

  2. Joaquín Pérez Calderón

    Perfecto, estaba teniendo problemas al mostrar el título de las entradas con el Page Builder de mi plantilla y añadiendo esa simple línea de código…¡Solucionado! Mil gracias

  3. Avanzito Málaga

    Buenos días! Primero decir que tu blog y este articulo me parecen muy interesantes. Quería exponer mi problema, aunque no se si tiene que ver exactamente con la nueva etiqueta de título, el caso es que mi home, en el código aparece correctamente el «title» (descripción | titulo del sitio) pero en google aparece justo al revés y con puntos (titulo del sitio : descripción), y esto solo me ocurre en la home porque en las demás paginas me aparece bien el titulo. Lo he revistado mil veces, la plantilla, el plugin Seo by Yoast pero no le encuentro la solución…¿Alguna idea? Gracias!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información base sobre privacidad:
- Responsable: Fernando Tellado ([email protected])
- Fin del tratamiento: Moderación de comentarios para evitar spam
- Legitimación: Tu consentimiento
- Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal
- Derechos: Acceso, rectificación, portabilidad, olvido

 

Scroll al inicio