961 B
961 B
title: More on compilers: load, and templates
author: Jasper Van der Jeugt
Loading items
The compiler Monad is a complex beast, but this is nicely hidden for the user of the Hakyll library.
Suppose that you're generating index.html
which shows your latest brilliant
blogpost. This requires posts/foo.markdown
to be generated before
index.html
(so we don't have to generate it twice). But you don't have to care
about all of that: Hakyll will sort this out this out for you automatically!
Let's see some quick examples. We can load a specific item:
load "posts/foo.markdown" :: Compiler (Item String)
Or a whole bunch of them:
loadAll "posts/*" :: Compiler [Item String]
Sometimes you just want the contents and not the Item
:
loadBody "posts/foo.markdown" :: Compiler String
This is all useful if we want to use Hakyll's templating system.