ブログを hakyll に移動します。
インデックス ページの私の Web デザインには、それぞれに 3 つの投稿プレビューを含む水平行があります。Css/jsは、私が持っているすべての投稿ではなく、この行を自動的にフローできるようにする方がよいように作成されていますが、投稿リストをそれぞれ3つの投稿のチャンクに切り取り、別の行を生成する方がよいでしょうチャンクごとに 3 つの投稿があります。
だから代わりに
- row
- col-sm-4 - col-sm-4 - col-sm-4
- col-sm-4 ...
したい
- row
- col-sm-4 - col-sm-4 - col-sm-4
- row
- col-sm-4 - col-sm-4 - col-sm-4
...
私のsite.hs
中で私は非常に典型的です
match "blog.html" $ do
route cleanRoute
compile $ do
posts <- recentFirst =<< loadAll "posts/**"
let indexCtx =
listField "posts" postCtxWithCat (return posts) `mappend`
favCtx
getResourceBody
>>= applyAsTemplate indexCtx
>>= loadAndApplyTemplate "templates/default.html" indexCtx
>>= relativizeUrls
>>= cleanIndexUrls
そして今、投稿を3つのチャンクにカットしたいと思います.
posts <- recentFirst =<< loadAll "posts/**"
let postsBy3 = chunksOf 3 posts -- from split package
しかし、これをテンプレートにさらにフィードするpostsBy3 :: [[Item String]]
方法とそれを使用する方法は...大きな問題です。
やってるだけ
listField "postsBy3" postCtxWithCat (return postsBy3) `mappend`...
は明らかに型の不一致です。
立ち往生。