2016-11-21 4 views
0

私はちょうどHakyllから始めて、hakyll initに付属のデフォルトサイトで作業しています。私は2015-08-12.spqr.markdownに次のように入れてみました:markdownの中でpartialsを使うには?

$partial("includes/DB.hs")$ 

期待通りに動作しませんでした - ポストはちょうどリテラルテキスト$partial("includes/DB.hs")$を示しました。それはincludes/DB.hsの内容を投稿に入れなかった。それから私はsite.hsに以下を追加しようとしたが、でもこれは動作しませんでした:

match "includes/*" $ compile templateBodyCompiler 

私は何をしないのですか?

答えて

3

部分はテンプレート内でのみ認識されます。投稿をtemplateCompilerまたはapplyAsTemplateを使ってコンパイルする必要があります。この例は、index.html compilationにあります。あなたも値下げを処理するために、例えば、いくつかのより多くのテキストを変換したいとき

applyAsTemplateは特に便利です:

compile $ do 
    getResourceString 
     >>= applyAsTemplate someContext -- e.g. defaultContext 
     >>= renderPandoc 
     >>= loadAndApplyTemplate "templates/default.html" indexCtx 
     >>= relativizeUrls 
関連する問題