--- import { getCollection, render } from 'astro:content'; import Base from '../../layouts/Base.astro'; export async function getStaticPaths() { const fichas = (await getCollection('fichas')) .filter(f => f.data.semaforo === 'verde' || f.data.semaforo === 'propio'); return fichas.map(f => ({ params: { slug: f.id }, props: { ficha: f } })); } const { ficha } = Astro.props; const d = ficha.data; const { Content } = await render(ficha); /* schema.org — para que un buscador (o un modelo) pueda leer la procedencia sin adivinarla. 9-1 §2: «fichas públicas + schema.org para GEO». */ const jsonld = { '@context': 'https://schema.org', '@type': 'CreativeWork', name: d.tituloCompleto ?? d.titulo, alternateName: d.titulo, inLanguage: 'es', datePublished: String(d.anio), isPartOf: d.obra, creditText: d.credito, ...(d.atribuido ? { author: { '@type': 'Person', name: d.autor.replace(/^Atribuido a /, '') }, creativeWorkStatus: 'Autoría tradicional no verificada paleográficamente' } : { author: { '@type': 'Person', name: d.autor } }), }; ---

{d.palabra}

{d.credito}