diff --git a/eleventy.config.js b/eleventy.config.js index 4b120a4..273e226 100644 --- a/eleventy.config.js +++ b/eleventy.config.js @@ -18,7 +18,7 @@ dotenv.config(); import yaml from 'js-yaml'; // config import -import {showInSitemap, tagList} from './src/_config/collections.js'; +import {getAllPosts, showInSitemap, tagList} from './src/_config/collections.js'; import events from './src/_config/events.js'; import filters from './src/_config/filters.js'; import plugins from './src/_config/plugins.js'; @@ -35,6 +35,7 @@ export default async function (eleventyConfig) { eleventyConfig.addLayoutAlias('tags', 'tags.njk'); // --------------------- Collections + eleventyConfig.addCollection('allPosts', getAllPosts); eleventyConfig.addCollection('showInSitemap', showInSitemap); eleventyConfig.addCollection('tagList', tagList); diff --git a/src/_config/collections.js b/src/_config/collections.js index fc5b9f0..a95b365 100644 --- a/src/_config/collections.js +++ b/src/_config/collections.js @@ -1,4 +1,9 @@ -/** All markdown files as a collection for sitemap.xml */ +/** All blog posts as a collection. */ +export const getAllPosts = collection => { + return collection.getFilteredByGlob('./src/posts/**/*.md').reverse(); +}; + +/** All relevant pages as a collection for sitemap.xml */ export const showInSitemap = collection => { return collection.getFilteredByGlob('./src/**/*.{md,njk}'); }; diff --git a/src/common/og-images.njk b/src/common/og-images.njk index 150f2f3..b7bc751 100644 --- a/src/common/og-images.njk +++ b/src/common/og-images.njk @@ -5,7 +5,7 @@ background: '#FBBE25' text: '#161616' siteUrl: 'eleventy-excellent.netlify.app' pagination: - data: collections.posts + data: collections.allPosts size: 1 alias: post permalink: '/assets/og-images/{{ post.data.title | slugify }}-preview.svg' diff --git a/src/pages/blog.njk b/src/pages/blog.njk index d2fb0ba..0989504 100644 --- a/src/pages/blog.njk +++ b/src/pages/blog.njk @@ -3,7 +3,7 @@ layout: base title: Blog description: 'All blog posts can be found here' pagination: - data: collections.posts + data: collections.allPosts size: 8 permalink: 'blog/{% if pagination.pageNumber >=1 %}page-{{ pagination.pageNumber + 1 }}/{% endif %}index.html' ---