première publication
This commit is contained in:
24
src/pages/journal/[slug].astro
Normal file
24
src/pages/journal/[slug].astro
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
import { getCollection } from 'astro:content';
|
||||
import Layout from '../../layouts/Layout.astro';
|
||||
|
||||
// 1. Génère une page pour chaque entrée de la collection 'journal'
|
||||
export async function getStaticPaths() {
|
||||
const journalEntries = await getCollection('journal');
|
||||
return journalEntries.map(entry => ({
|
||||
params: { slug: entry.slug },
|
||||
props: { entry },
|
||||
}));
|
||||
}
|
||||
|
||||
// 2. Récupère les props pour la page actuelle
|
||||
const { entry } = Astro.props;
|
||||
const { Content } = await entry.render();
|
||||
---
|
||||
|
||||
<Layout title={entry.data.title}>
|
||||
<h1>{entry.data.title}</h1>
|
||||
<p>Par {entry.data.author}, le {entry.data.publishDate.toLocaleDateString('fr-FR')}</p>
|
||||
<hr>
|
||||
<Content />
|
||||
</Layout>
|
||||
Reference in New Issue
Block a user