如何使用自定义元数据过滤 Hakyll 帖子

How to filter Hakyll posts with a custom metadata

我想根据元数据值过滤我网站的一些 post。我想创建一个名为 status(如 titledate)的特定元数据,它可以采用多个值(草稿、已发布、存档):

---
title: The title
author: Myself
date: 2016-11-29
tags: tag1, tag2
status: draft
---

根据status元数据的值,post是否应该发布。

我查看了 hackage documentation,但我不确定要使用的函数。

你知道如何用 Hakyll 做吗?

您可能正在寻找 matchMetadata:

matchMetadata :: Pattern -> (Metadata -> Bool) -> Rules () -> Rules ()

有了它,而不是说...

match "posts/*.md" $ do -- etc.

...您可能有:

matchMetadata "posts/*.md" (\m -> lookupString "status" m == Just "published") $ do -- etc.