雨果-页面包中的相对路径

时间:2018-11-25 03:15:37

标签: hugo

很抱歉出现了一个基本问题,但是我刚开始使用Hugo,所以我不知道如何链接到页面包中的图像。

我的内容文件夹中具有以下结构:

content/
├── about
│   └── index.md
└── post
    ├── post01
    │   ├── img01.png
    │   └── index.md
    └── post02
        ├── img01.png
        └── index.md

根据我对page resources上的文档的阅读,听起来页面捆绑包中的页面资源应该具有相对路径。基于此,我认为我可以使用以下markdown从post01 index.md内链接到img01.png:

![](img01.png)

但是,我只是无法正常工作。我可以使它工作的唯一方法是将图像放入/ static文件夹(与/ content处于同一级别),然后markdown将加载图像而无需进行任何修改。因此,似乎相对路径没有按照我认为的方式工作,因为我指定的任何路径都是相对于/ static文件夹的。有人可以帮助我了解发生了什么事吗?

另一个令人困惑的问题是,如果我将/ content / post文件夹重命名为/ content / posts然后重新启动本地hugo服务器,我的帖子都不会再加载到首页上,甚至无法浏览到网址为localhost:1313 / posts(尽管localhost:1313 / about仍然可以正常加载)。是什么原因导致主页自动列出/ content / post的内容,而不列出/ content / posts的内容,并且为什么我无法浏览到localhost:1313 / posts有特定的原因?

非常感谢!

1 个答案:

答案 0 :(得分:1)

这里实际上有三个问题。

问题1-页面捆绑图片。

MarkDown由BlackFriday模块处理,该模块不知道页面包。您将需要使用图像标签和一些短代码来获取它。像这样:

{{ with .Resources.Match "image01.png" }}
   <img src="{{ .RelPermalink }}" width="{{ .Width }}" height="{{ .Height }}">
{{end}}

请参见hugo image processing page

问题2-帖子与帖子(首页)

如果没有关于主题和布局的大量信息,这实际上很难回答。但是作为猜测...

在生成index.hml的模板中的某处,将出现以下内容:

{{ range .Section "post" }}

通过移动内容,可以更改节名称。按照约定,节名是单数。

问题3-帖子与帖子(雨果服务器)

hugo server从内存中提供页面。它没有使用您的文件系统。因此,如果目录没有内置内容,则将无法浏览。要确切了解hugo server将使用的内容(带有路径),则只需构建并查看public/目录。