【问题标题】:Jekyll does not create html page from markdown fileJekyll 不会从 markdown 文件创建 html 页面
【发布时间】:2020-02-25 06:21:39
【问题描述】:

我是 Jekyll 的新手,我使用 TeXt 主题构建了一个网页。我下载了所有文件并创建了一个成功运行的本地 Jekyll 网站。项目文件夹包含文件夹

  • _数据
  • _包括
  • _布局
  • _posts
  • _sass
  • _网站
  • 资产
  • 码头工人
  • 文档
  • 截图
  • 测试
  • 工具

文件夹中剩下的文件是_config.yml、index.html等

现在假设我要创建一个新页面“简历”,该页面显示为网站顶部导航栏中的条目或名称,例如“关于”或“存档”。

我在主项目文件夹(即 index.html 所在的位置)中创建一个 .md 文件,并在前面指定布局 - 在 TeXt 的情况下是

layout: page

另外,在 _data 文件夹中,我打开 navigation.yml 并在“header”下附加一个名为“Bio”的新标题,即

header: 
    title: Bio 
    url: /Bio.html

这完全类似于导航栏中的关于页面并且可以正常工作。

但是当我使用 Bio 执行此操作时,我收到 404 错误,并且 Jekyll 无法找到该站点。

我搜索了项目的所有文件夹,发现Jekyll并没有在Bio.md的基础上创建必要的.html-文件Bio.html。它只是将 Bio.md 移动到 _site。

因此,在 navigation.yml 中给出的 url 找不到,我得到了错误。如何让 Jekyll 创建 Bio.html?

【问题讨论】:

    标签: html jekyll


    【解决方案1】:

    如果 Bio.md 只是被复制,那意味着 Jekyll 认为它是一个静态文件。

    你肯定错过了正确的Front matter。

    您的 Bio.md 应如下所示:

    ---
    layout: page
    title: Bio
    ---
    ## Content here
    ...
    

    如果问题仍然存在,请添加仓库 url 以帮助调试。

    【讨论】:

    • 感谢您的回复。尽管除了 BOM 之外,我的前题实际上是正确的。
    【解决方案2】:

    我自己想出了答案。这是 Jekyll 臭名昭著的 UTF-8 BOM 问题。 Bio.md 文件是用默认使用 BOM 的记事本编写的。使用 ANSI 完全解决了这个问题,而没有改变前面的任何内容。

    【讨论】:

      猜你喜欢
      • 2013-03-08
      • 1970-01-01
      • 2011-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-31
      • 1970-01-01
      • 2017-10-20
      相关资源
      最近更新 更多