Cambios en la etiqueta título de WordPress 4.4

En Desarrollo, Tutoriales y Guías, Webmasters por

Aquí seguimos tratando de ponernos al día con las últimas novedades de WordPress tras unos meses de inactividad, es el turno de la etiqueta título. Con la llegada de WordPress 4.4 se introdujeron una serie de cambios en cómo se maneja la etiqueta de título y en este artículo nos centraremos únicamente en los cambios que deberíamos hacer si disponemos de un tema personalizado, sin profundizar en los cambios que afectan a los desarrolladores de plugins.

Cambios en la etiqueta título de WordPress 4.4

El antes y el después de la etiqueta título en los temas WordPress.

En versiones anteriores a WordPress 4.4 era una práctica habitual emplear el siguiente código para manejar la etiqueta título:

<title><?php wp_title(''); ?></title>

El código era funcional y cumplía con su cometido, pero tenía como inconveniente que teníamos que agregar manualmente la etiqueta <title> en el archivo de nuestro tema, header.php normalmente.

Al mismo tiempo, esta forma de manejar los títulos limitaba la compatibilidad entre temas y plugins, por lo que en WordPress 4.4 se introdujeron cambios para solventar esta situación. Con la llegada de WordPress 4.4, ya no necesitamos agregar manualmente la etiqueta título, tan sólo necesitamos agregar en el archivo functions.php la siguiente línea:

add_theme_support( 'title-tag' );

Con este cambio, conseguimos que WordPress controle por completo la etiqueta título, lo cual mejora la compatibilidad con plugins que intervienen en los títulos (plugins de SEO por ejemplo).

En una primera fase se optó por deprecar la función wp_title(), pero finalmente se mantuvo para tratar de mantener la compatibilidad y dar tiempo a los desarrolladores a actualizarse al nuevo código, aunque el plan es deprecarla definitivamente en futuras versiones de WordPress, por ello debemos actualizar nuestro tema cuanto antes.

Mantener la compatibilidad de la etiqueta título con versiones anteriores a WordPress 4.4.

Si somos desarrolladores de temas, nos aparece un nuevo problema, y es que no sabemos que versión de WordPress usaran nuestros clientes, por lo que debemos escribir código compatible con versiones anteriores. El código que nos facilitan los propios desarrolladores es el siguiente:

<?php
if ( ! function_exists( '_wp_render_title_tag' ) ) {
    function theme_slug_render_title() {
?>
<title><?php wp_title( '|', true, 'right' ); ?></title>
<?php
    }
    add_action( 'wp_head', 'theme_slug_render_title' );
}
?>