1

ブログを 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`...

は明らかに型の不一致です。

立ち往生。

4

0 に答える 0