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

时间:2018-12-02 23:01:18

标签: haskell hakyll

我想根据元数据值过滤网站上的某些帖子。我想创建一个称为status(例如titledate)的特定元数据,该元数据可以采用多个值(草稿,已发布,存档):

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

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

我查看了documentation hackack,但不确定要使用的功能。

您知道如何使用Hakyll做到这一点吗?

1 个答案:

答案 0 :(得分:3)

您可能正在寻找matchMetadata

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

有了它,而不是说...

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

...您可能有:

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