Ghost博客:具有静态主页的动态路由无法按预期工作

时间:2018-10-20 11:24:13

标签: handlebars.js self-hosting ghost-blog

我刚刚建立了一个Ghost博客。这是clean install on a VPS,并且已正确启动并运行。

默认情况下,当在浏览器中打开时,Ghost会显示帖子的列表。我想在/处有一个主页,并在/blog处有我的帖子。据我所知,这可以通过使用Dynamic Routing来实现。

为简化这一点,我认为我可以将page(Ghost的概念为pagesposts)作为主页。然后,我可以使用已经存在的page.hbs模板来呈现此页面。

这是我的routes.yaml文件:

routes:
  /: 
    data: page.home
    template:
      - page

collections:
  /blog/:
    permalink: /blog/{slug}/
    template:
      - index

taxonomies:
  tag: /blog/tag/{slug}/
  author: /blog/author/{slug}/

我有一个名为 home 的页面,但是在加载主页时,我得到的是空白页面:仅显示页脚。

日志中没有任何提示可以告诉我可能会发生什么。我了解routes.yaml正确吗? page.home是不是如何将数据传递到页面?

1 个答案:

答案 0 :(得分:3)

我在forum.ghost.org上问了这个问题,得到了我要找的答案。

解决方案是使用long-form数据表示法,如下所示。我的routes.yaml文件现在看起来像:

routes:
  /: 
    data: 
      post: page.home
    template: page

collections:
  /blog/:
    permalink: /blog/{slug}/
    template:
      - index

taxonomies:
  tag: /blog/tag/{slug}/
  author: /blog/author/{slug}/

现在,当我加载example.com时,将加载page home ,而当我导航至example.com/blog时,博客已加载