Load blog page data as the content

pull/1/head
Nikita Tokarchuk 3 years ago
parent 47029b5a4c
commit 7a694bcbe8
Signed by: mainnika
GPG Key ID: A595FB7E3E56911C
  1. 7
      frontend/content/blog.go
  2. 11
      frontend/renderer/blog.go

@ -1,6 +1,13 @@
package content
import (
"code.tokarch.uk/mainnika/nikita-tokarch-uk/frontend/ghost"
)
// Blog content data
type Blog struct {
_ interface{} `template:"blog.go.tmpl"`
ghost.Meta
Pinned []ghost.Post
Posts []ghost.Post
}

@ -2,13 +2,24 @@ package renderer
import (
"code.tokarch.uk/mainnika/nikita-tokarch-uk/frontend/content"
"code.tokarch.uk/mainnika/nikita-tokarch-uk/frontend/ghost"
routing "github.com/jackwhelpton/fasthttp-routing/v2"
)
// blog handler renders blog data
func (r *Renderer) blog(c *routing.Context) (err error) {
postsPerPage := r.ContentConfig.PostsPerPage
currentPage := c.QueryArgs().GetUintOrZero("page")
latestPosts, err := r.GhostClient.GetPosts(ghost.QueryLimit(postsPerPage), ghost.QueryPage(currentPage))
if err != nil {
return
}
blogContent := content.Blog{
Meta: latestPosts.Meta,
Posts: latestPosts.Posts,
}
return c.Write(blogContent)

Loading…
Cancel
Save