Tiempo de lectura aprox: 3 minutos, 19 segundos
XML Sitemap en WordPress 5.4
Con la llegada de nuevas versiones, aunque estas sean «menores», siempre hay novedades, algunos elementos en prueba y, como en este caso, un elemento en desarrollo.
Para la versión 5.4 que se espera para el próximo marzo, está previsto que aparezca un elemento un tanto polémico.
Se trata de incorporar como parte del core de WordPress, un generador de documentos en formato XML.
Este generador tiene como misión, la creación de un documento que muchos (especialmente los preocupados por el SEO) consideramos imprescindible, y es el sitemap.
XML Sitemap en WordPress 5.4
Lo más común, es que sean los plugin de SEO los encargados de generar el sitemap de un sitio con WordPress.
Para la versión 5.4, se ha creado un equipo que está trabajando en la implementación de mejoras en la función de mapas de sitio XML. Llevan unos siete meses trabajando y han puesto el plugin en GitHub para que se pueda colaborar con la creación.
El pasado 31 de enero de 2020, el plugin ha sido puesto en el repositorio de WordPress para que cualquiera pueda hacer las pruebas que considere oportunas.
En principio el proyecto tiene como objetivo, enviar una versión básica de una función de mapas de sitio XML a todas las instalaciones de WordPress.
Se anunció también que ofrecerá una API para que los desarrolladores de plugins la manipulen. De esta forma, los plugin existentes de creación de mapas, no desaparecerán abruptamente, sino que ofrecerán a los usuarios varias opciones sobre la forma en que se crean los sitemap.
En junio de 2019, un equipo creado por Google, Yoast y otros colaboradores propuso originalmente mapas de sitio XML como una característica central de WordPress.
Tradicionalmente WordPress ha dejado a manos de los desarrolladores de plugins, la creación de mapas de sitio, mientras que otros CMS tienen esta función integrada en su core.
Muchos elogiaron la iniciativa, como el líder del proyecto WordPress Matt Mullenweg. En una cita: «Esto tiene mucho sentido, esperando ver la V1 de esto en el núcleo y que evolucione en futuras versiones y se cimente la merecida reputación de WordPress de ser el mejor CMS para SEO».
Como en casi cualquier desarrollo, hay detractores de esta idea que apuestan por dejar la creación de los sitemap XML en manos de plugins.
La característica se espera (ambiciosamente) que aparezca en la versión 5.4 según Muller, pero es también probable que se demore hasta la 5.5 (a finales de este mismo año).
Actualmente, el plugin de funciones indexa las siguientes URL:
- Página principal
- Página de publicaciones de blog (si no es la página de inicio)
- Publicaciones y páginas
- Categorías y etiquetas
- Tipos de publicaciones personalizadas
- Taxonomías personalizadas
- Usuarios / Autores
Los tipos de publicaciones y taxonomías personalizadas se registran solo si son públicas.
También hay un gancho de filtro disponible para cambiar qué tipos de publicaciones, taxonomías y usuarios están indexados. Idealmente, WordPress proporcionaría una bandera (flag) para tipos de publicaciones y taxonomías.
Atajando los problemas
Uno de los problemas más acuciantes en la implementación de una característica similar, es el de rendimiento. WordPress puede manejar sitios de muchos y diversos tamaños y, no es igual manejar un sitio con una o dos publicaciones al día, que uno con cien o doscientas.
Quizá una forma (ciertamente muy usada) de incrementar el rendimiento, es usar una solución de «cache», pero aún así, escalar la solución plantea su reto.
Muller ha manifestado que «Resolver el problema de rendimiento no es trivial, y hemos examinado varias soluciones», … «Creemos que llegamos a una solución que no necesita almacenamiento en caché completo y que seguirá siendo escalable».
Existen dos factores clave en el rendimiento:
- El número de URL por página.
- La fecha lastmod en el archivo index.xml
«Abordar la cantidad de URL por página es bastante trivial», dijo Muller. «Si bien los mapas de sitio pueden tener hasta 50000 URL por mapa de sitio, descubrimos que limitarlo a 2000 es aceptable desde una perspectiva de rendimiento y totalmente aceptable desde la perspectiva de un motor de búsqueda»
Así que se ha decidido mantener un valor predeterminado de 2000 URL por mapa, mientras se proporciona un gancho de filtro para que los plugin modifiquen este valor si lo necesitan.
La solución para la fecha lastmod no fue tan sencillo, «Creemos que encontramos un buen equilibrio, que será escalable y no abre la lata de gusanos a los que nos expone el almacenamiento en caché completo», dijo Muller.
La solución implementada consistió en programar una tarea cron que se ejecuta dos veces al día (la frecuencia se puede filtrar mediante plugins). La tarea cron obtiene las fechas lastmod de cada mapa del sitio y las almacena en la tabla de opciones, lo que es una solución de «caché ligero».
En palabras de Muller, «Confiar en cron debería ser lo suficientemente estable para sitios web pequeños a medianos», «Los sitios web empresariales generalmente tienen un cron de servidor configurado para hacer ping más regularmente a WP Cron en lugar de depender de los visitantes del sitio web para activarlo. De hecho, la mayoría de los proveedores de alojamiento administrado tienen eso para todos los planes».
¿Qué sucede con los sitios con sitemaps existentes?
Una pregunta que queda sin respuesta es qué sucede cuando un usuario actualiza a WordPress 5.4 / 5.5 y ya tiene un mapa del sitio. Es muy probable que haya millones de sitios de WordPress que ejecutan un complemento o tienen algún tipo de solución de mapa del sitio.
Las declaraciones de Muller a este respecto son quizá un poco inquietantes: «Esta es una pregunta que aún no hemos resuelto», «Es importante trabajar con los autores de plugins, y en un mundo ideal, todos los plugin que brinden soluciones avanzadas de sitemaps ampliarían la API principal. Nos encantaría recibir comentarios de la comunidad sobre eso».
WordPress debe tener cuidado para evitar conflictos importantes o errores de indexación, o al menos aliviar los problemas de los usuarios que pueden no estar al tanto de esta próxima función.
¡Gracias por leernos!
¡Tus comentarios y preguntas nos ayudan a mejorar, por favor comenta!