CS · Sitemaps
Sitemaps XML estáticos escritos en la raíz del sitio: índice, uno por taxonomía con los archivos de sus términos (categorías, etiquetas y, con WooCommerce, las categorías de producto, activas de fábrica y con su miniatura), uno por tipo de contenido (por idioma con Polylang o WPML, con o sin hreflang, por categoría y, si divides por categoría, uno completo además; todo elegible en cada tipo), noticias con caducidad a los 2 días, imágenes, vídeos y un sitemap de texto con URLs a mano. Respeta la indexabilidad de Yoast SEO y Rank Math (o de tus propias meta keys), permite excluir entradas desde el editor, el listado o el panel, declara el índice en robots.txt (con copia previa si el fichero es físico) y pinta la vista humana con una hoja CSS (la del tema o la suya), sin XSLT, que Chrome retira; si se prefiere, admite una hoja XSL.
WP 6.0+ · PHP 8.0+ · Probado en 7.1
Changelog
1.5.0
- La vista humana de los sitemaps pasa de XSL a CSS (
<?xml-stylesheet type="text/css"?>): Chrome retira XSLT y ya mostraba una banda roja de aviso en los sitemaps. La hoja por defecto es core/css/sitemap-xml.css del tema o, si no existe, assets/sitemap.css del plugin: filas numeradas, fecha, fichas de hreflang, imágenes, vídeos y noticias, recuento al pie y modo claro y oscuro. A los buscadores les da igual: ignoran la hoja. - El campo «Hoja de estilo» admite una
.css o una .xsl; el tipo sale de la extensión. Los ajustes guardados con la XSL que antes era la de por defecto pasan solos a la CSS; una XSL propia o el campo vacío se respetan. - Límites de CSS frente a la XSL: los
<loc> no son enlaces pulsables, el recuento va en el pie y las fechas salen en formato W3C.
1.4.0
- Bloque nuevo en el panel, 02 · Taxonomías: cada taxonomía pública puede generar su propio
sitemap-cs-tax-{taxonomía}.xml con los archivos de sus términos (la página de cada categoría, etiqueta o atributo), con las mismas opciones que un tipo de contenido: imagen del término, un fichero por idioma, hreflang, incluir términos sin contenido y exclusiones con buscador. - Con WooCommerce activo,
product_cat viene activada de fábrica y con la miniatura de la categoría como image:image: al actualizar, una tienda escribe sitemap-cs-tax-product-cat.xml en la siguiente generación sin tocar nada (para no generarlo, desmarcar y guardar). Las categorías madre cuyo contenido cuelga solo de sus hijas entran también, aunque WooCommerce las cuente a cero. - Indexabilidad de los términos con las mismas reglas que las entradas:
noindex y canonical por término y por taxonomía entera en Yoast SEO y Rank Math, meta keys propias, exclusiones del panel y filtro cs_sitemaps_termino_indexable. El lastmod de un archivo de término es la fecha del contenido más reciente que cuelga de él. - Crear, editar o borrar un término de una taxonomía activa programa la regeneración diferida, igual que publicar una entrada.
1.3.1
- La casilla «Además, uno con todos los idiomas» de 1.3.0 no era lo pedido. Pasa a ser «Además, uno completo» y va con «Dividir por»: un tipo dividido por categoría escribe también el fichero del tipo entero, sin dividir por término. Respeta «Un fichero por idioma»: uno completo por idioma si el tipo separa (
sitemap-cs-post-es.xml, -en.xml), uno solo si no. Mismo ajuste todos; sin «Dividir por» no hace nada. - Carpeta de instalación fija: el plugin se instala y actualiza siempre en
wp-content/plugins/cs-sitemaps/, lleve el zip la carpeta que lleve o vaya plano (filtro upgrader_source_selection). Antes un zip sin carpeta dentro acababa en cs-sitemaps-1/ o parecido.
1.3.0
- Casilla nueva por tipo, «Además, uno con todos los idiomas»: los tipos que separan por idioma pueden generar también
sitemap-cs-{tipo}.xml con el tipo entero, sin dividir por idioma ni por término. Es el mismo nombre que tendría el fichero sin separar, así apagar la separación no cambia nada en Search Console. Arranca desmarcada. x-default puede apuntar ahora a una página del sitio (la selectora de idioma que admite Google) además de a la versión de un idioma. El desplegable del bloque 02 lista las páginas publicadas de todos los idiomas; si la elegida deja de estar publicada, no se declara nada y el panel lo avisa.- La hoja XSL del plugin previsualiza todas las imágenes de cada URL: con una, la miniatura junto a su línea, como hasta ahora; con varias, una tira de miniaturas y debajo la lista de URLs. Siempre en diferido y sin JavaScript.
1.2.1
- Corregido: «Guardar cambios» del panel acababa en la pantalla «Todos los ajustes» de options.php sin guardar nada cuando había robots.txt físico con alguna copia hecha. El botón «Restaurar la última copia» iba en un formulario anidado dentro del de ajustes; el navegador ignora un
<form> anidado y sus campos ocultos pisaban al action=update y al nonce de la Settings API. Ahora el formulario de restauración va fuera del de ajustes y el botón se asocia por el atributo form.
1.2.0
- «Un fichero por idioma» y «hreflang» pasan a decidirse en cada tipo de contenido, de forma independiente. El ajuste global se migra solo.
1.1.0
- Exclusión de entradas: lista con buscador por título o ID en el panel, acción en lote, enlace por fila y filtro «Sitemap» en el listado de cada tipo. Desmarcar en el panel una entrada excluida desde el editor retira la exclusión.
- Más intervalos de regeneración: cada 15 y 30 minutos, cada 6 horas y cada semana.
- robots.txt físico: el plugin escribe la línea
Sitemap: del índice en cada generación, guardando antes una copia fechada en wp-content/cs-sitemaps/ (diez últimas), en modo «añadir» o «sustituir», con restauración desde el panel. - Hoja XSL propia del plugin (
assets/stylesheet.xsl, autónoma) cuando el tema no tiene la suya.
1.0.0
- Primera versión: índice
sitemap-cs-index.xml, sitemaps por tipo de contenido, por idioma (Polylang y WPML, con hreflang y x-default) y por término de taxonomía. - Extensiones de imágenes y vídeos (YouTube, Vimeo, <video>) dentro de cada URL o en ficheros aparte.
- Sitemap de noticias con caducidad configurable (2 días por defecto).
- Indexabilidad según Yoast SEO, Rank Math o meta keys propias; exclusión desde el editor y desde el panel.
- Sitemap de texto (
sitemap-custom.txt) desde un textarea. - Regeneración desde el panel, por cron y al publicar; limpieza de ficheros huérfanos; hoja XSL del tema detectada sola.
Descargar