我想使用Jekyll创建一个网站。不是博客。有没有办法避免在网址和网页的文件名中指定创建日期?
我认为Jekyll背后的想法非常棒,但它似乎与博客生成内容有关,而在更一般的用例中也可能有用。
答案 0 :(得分:48)
在_config文件中,您可以将永久链接更改为您喜欢的任何内容,例如我的
permalink: /blog/:title
关于日期你可以使用YAML前面的事情选择你自己的日期,再次在我的
title: example
date: you can pick what ever date you want
答案 1 :(得分:9)
如果您不生成博客页面,则可以在目录结构中创建映射到某些URL的文件。如果您的目录具有结构
,则在localhost上运行- _layouts/
- config.yml
- index.html
- some_other_page.html
- some_directory/
- index.html
- some_sub_page.html
在jekyll处理完文件后,您将在以下位置获得内容:
0.0.0.0:4000
(index.html)0.0.0.0:4000/some_other_page.html
(some_other_page.html)0.0.0.0:4000/some_directory
(some_directory / index.html)0.0.0.0:4000/some_directory/some_sub_page.html
(some_directory / some_sub_page.html)You can also use the permalink attribute on each post to set one manually, or set a different default in config.yml永久链接只有一小部分变量可供使用,需要在每个要放入非标准位置的文件中定义。
此目录结构也会自动对您的帖子进行分类。所以你可以:
- some_category (defined in the yaml front matter or the _config.yml
- index.html
- _posts/
- some_post.md
- some_other_post.md
帖子会自动将类别设置为“某个类别”,而index.html将显示在0.0.0.0:4000/some-category
,并采用默认的永久链接格式。类别变量在永久链接格式字符串中以:category
形式提供。
答案 2 :(得分:4)
文档说的是什么:
您可以在_config.yml文件中配置永久链接,如下所示:
permalink: /:categories/:year/:month/:day/:title.html
如果您未指定任何永久链接设置,则Jekyll会将上述模式用作默认设置。永久链接也可以使用内置永久链接样式设置:
permalink: date
虽然您可以使用模板变量指定自定义永久链接模式,但为方便起见,Jekyll还提供了以下内置样式。
- date = /:categories/:year/:month/:day/:title.html
- pretty = /:categories /:year /:month /:day /:title /
- 序数= /:categories/:year/:y_day/:title.html
- none = /:categories/:title.html
来源:https://jekyllrb.com/docs/permalinks/
这是我使用的基本设置:
permalink: pretty
这会将页面设置为漂亮的永久链接样式。因此'/contact.md'将成为'/ contact /'.
我如何将它用于博文:
permalink: /blog/:title/
这确保路径包含(缓和的)标题。
我如何将其用于收藏:
permalink: /desiredpath/:name/
这确保路径包含文件名。
答案 3 :(得分:2)
在寻找在_pages
目录中整理jekyll页面的方法时遇到了这个老问题,类似于_posts
。然后访问这些页面而不在URL中显示整个路径。
对我来说效果更好的方法是使用jekyll collections,如下所示:
1 - 在_config.yml
中添加页集合:
collections:
pages:
output: true
permalink: /:path/
2 - 创建一个名为_pages
的新目录(它应该具有相同的集合名称,前缀为_
)
3 - 将_pages
文件夹中的页面添加为.md或.html文件,以YAML Front Matter开头。
例如。 /_pages/about.md
将如下所示:
---
layout: page
---
<!-- about page content -->
构建之后,about页面的网址将为<your-web-site>/about
。
或者,要显示集合名称,您必须将其永久链接定义为:
permalink: /:collection/:path/