Ajouter vos pages au sitemap et à llms.txt
Utilisez getAllPages() pour sitemap.xml et floconLlmsTxt() pour llms.txt. Les deux viennent de @flocon-ai/astro.
Les brouillons ne sont jamais listés. Une page programmée pour plus tard n'est pas listée avant sa date de publication.
sitemap.xml
Créez src/pages/sitemap.xml.ts :
import { getAllPages } from "@flocon-ai/astro"
export async function GET() {
const pages = await getAllPages()
const urls = pages
.map((p) => `<url><loc>https://example.com/${p.locale}${p.path}</loc><lastmod>${p.updatedAt}</lastmod></url>`)
.join("")
return new Response(
`<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">${urls}</urlset>`,
{ headers: { "content-type": "application/xml" } }
)
}Vous voulez des hreflang dans votre sitemap ? floconSitemap({ url }) donne la même liste. Chaque entrée contient :
urllastModified(leupdatedAtde la page)alternates.languages: une URL par langue où la page existe
llms.txt
Créez src/pages/llms.txt.ts :
import { floconLlmsTxt } from "@flocon-ai/astro"
export async function GET() {
const text = await floconLlmsTxt({ url: ({ locale, path }) => `https://example.com/${locale}${path}` })
return new Response(text, { headers: { "content-type": "text/plain; charset=utf-8" } })
}floconLlmsTxt() renvoie un texte avec un lien Markdown par page publiée :
- [Titre de la page](https://example.com/guides/seo)La règle url
floconSitemap et floconLlmsTxt prennent une fonction url. Elle reçoit { locale, path } et renvoie l'URL complète de la page sur votre site web.
localeest la langue de la page, commeenoufr.pathcommence par un slash, comme/guides/seo.- Flocon AI n'ajoute aucun préfixe. Construisez l'URL comme le fait votre site web.
getAllPages()
Elle renvoie les pages publiées, sans leurs blocs. Chaque élément contient locale, path, title, updatedAt et alternates.
Elle lève une erreur si l'appel à l'API échoue.
Environnement
Ces fonctions s'exécutent côté serveur uniquement. Elles lisent votre token read dans FLOCON_TOKEN. Sur Cloudflare, passez l'option token. Voir Installation.
Mis à jour