缺省情况下, 站点项目中的目录static/
被用来存放所有 static files 静态文件 (即样式表、JavaScript脚本、图像等)。静态文件从站点根目录上提供(比如, 静态文件 static/image.png
, 可以通过http://{server-url}/image.png
访问, 在文档中可以使用 ![Example image](/image.png)
来包含).
可以配置Hugo查询不同目录,设置多个目录来存放静态文件,这通过在site config站点配置中
配置staticDir
参数来实现。在所有静态目录的所有文件会组成一个联合的文件系统.
这个联合文件系统从网站根提供服务,这样<SITE PROJECT>/static/me.png
可以通过<MY_BASEURL>/me.png
访问.
下面例子为一个多语言站点设置了两个静态目录 staticDir
和 staticDir2
:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| languages:
en:
baseURL: https://example.com
languageName: English
staticDir2: static_en
title: In English
weight: 2
"no":
baseURL: https://example.no
languageName: Norsk
staticDir:
- staticDir_override
- static_no
title: På norsk
weight: 1
staticDir:
- static1
- static2
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| staticDir = ['static1', 'static2']
[languages]
[languages.en]
baseURL = 'https://example.com'
languageName = 'English'
staticDir2 = 'static_en'
title = 'In English'
weight = 2
[languages.no]
baseURL = 'https://example.no'
languageName = 'Norsk'
staticDir = ['staticDir_override', 'static_no']
title = 'På norsk'
weight = 1
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| {
"languages": {
"en": {
"baseURL": "https://example.com",
"languageName": "English",
"staticDir2": "static_en",
"title": "In English",
"weight": 2
},
"no": {
"baseURL": "https://example.no",
"languageName": "Norsk",
"staticDir": [
"staticDir_override",
"static_no"
],
"title": "På norsk",
"weight": 1
}
},
"staticDir": [
"static1",
"static2"
]
}
|
上面例子中, 并没有使用主题:
- 英语站点会从"static1",“static2” 和 “static_en” 这三个目录中获得静态文件.
如果文件重复,最右边的目录是会采用
- 挪威站点会从"staticDir_override" and “static_no"的混合目录中静态文件
- 注意 1
- 添加的这个
staticDir2
中的 2 (可以是从数字0到10) 告诉Hugo您想 添加 这个目录
到使用staticDir
设定的全局静态资源目录集合中。使用staticDir
在语言层次会替换全局值(如下面挪威站点中一样) - 注意 2
- 上面的例子是多语言站点设置multihost setup. 在通常的设置中, 所有的静态目录可以被所有站点访问.