遍历本地文件

使用 Hugo的 readDirreadFile 模板函数,您可以遍历服务器上的文件.

使用 readDir

函数readDir 返回 os.FileInfo的数组. 它接受文件path作为唯一字符参数. 这个路径可以是您网站的任何目录(在服务器文件系统中可以发现的目录)

路径参数是绝对路径还是相对路径并没有太大关系, 这是由于—最少对与readDir而言—您网站的根目录(通常是./public/)事实上变成了:

  1. 文件系统的根目录
  2. 当前工作目录

使用readFile

函数readfile function 从磁盘读取文件、转化为String供Hugo其他函数操作或者直接添加到模板中. readFile接受文件参数、包含路径的文件参数、作为传递给函数的参数.

在模板中使用readFile 函数, 请确保路径相对于Hugo项目根目录:

1
{{ readFile "/content/templates/local-file-templates" }}

readFile 例子: 添加项目文件到内容中

由于 readFile 是函数、它仅可以在模板中使用, 而不能在内容中使用. 然后,我们可以创建短代码模板 调用readFile, 传递第一个参数给函数,并且允许可选的第二个参数表示是否在markdown处理器中传递这个文件. 在内容中添加这个短代码的模式如下:

1
{{< readfile file="/path/to/local/file.txt" markdown="true" >}}