diff --git a/src/lib/components/Pager.svelte b/src/lib/components/Pager.svelte index 442325a6..7f7546ff 100644 --- a/src/lib/components/Pager.svelte +++ b/src/lib/components/Pager.svelte @@ -17,19 +17,19 @@ > {#if prev}
- - - {prev.title} + + + {prev.title}
{/if} {#if next}
- - + + {next.title} - +
{/if} diff --git a/src/routes/posts/+layout.server.ts b/src/routes/posts/+layout.server.ts index 0414af2c..9dac3b10 100644 --- a/src/routes/posts/+layout.server.ts +++ b/src/routes/posts/+layout.server.ts @@ -7,17 +7,23 @@ import type { LayoutServerLoad } from './$types'; export const prerender = true; export const load: LayoutServerLoad = async ({ url }) => { - const post = posts.find((post) => post.path === url.pathname); + const index = posts.findIndex((post) => post.path === url.pathname); - if (!post) { + if (index === -1) { error(404, 'Post not found.'); } + const post = posts[index]; + const prev = index < posts.length - 1 ? posts[index + 1] : undefined; // The higher the index the older the post. + const next = index > 0 ? posts[index - 1] : undefined; + const recommendedVideos = latestVideos.slice(0, 3); return { origin: ORIGIN, post, + prev, + next, recommendedVideos, seo: { title: post.title, diff --git a/src/routes/posts/+layout.svelte b/src/routes/posts/+layout.svelte index a9f1feb1..eae7cb31 100644 --- a/src/routes/posts/+layout.svelte +++ b/src/routes/posts/+layout.svelte @@ -1,5 +1,5 @@