前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Understand folder and path configuration in Jekyll

Understand folder and path configuration in Jekyll

作者头像
alanzeng
发布2025-01-14 21:15:50
发布2025-01-14 21:15:50
6100
代码可运行
举报
文章被收录于专栏:alanzeng423alanzeng423
运行总次数:0
代码可运行

理解 Jekyll 中的文件夹和路径配置

在使用 Jekyll 构建静态网站时,了解如何配置文件夹和路径对于网站的组织和内容管理至关重要。Jekyll 是一个功能强大的静态网站生成器,具有独特的文件夹结构和处理规则。本文将介绍 Jekyll 如何处理不同的文件夹,以及如何通过配置使网站更灵活。

Jekyll 的默认文件夹结构

Jekyll 的文件夹结构主要分为以下几类:

  1. 特殊文件夹
代码语言:txt
复制
- `_posts`:存放博客文章的默认文件夹。Jekyll 会自动将此目录中的 Markdown 或 HTML 文件处理为文章内容,并根据配置生成静态页面。
- `_layouts`:存放布局文件。布局文件用于定义网站的整体结构和模板,可以被文章或页面引用。
- `_includes`:存放可复用的片段文件,这些片段可以在布局或其他页面中包含,减少重复代码。
- `_data`:存放数据文件(如 `.yml`、`.json`)。这些数据文件可以在模板中被引用,提供灵活的数据展示和使用。
代码语言:txt
复制
- 任何不以下划线(`_`)开头的文件夹都被视为普通文件夹,其内容会直接被复制到生成的站点中,保持文件和目录结构。

Jekyll 对 _posts 文件夹的特殊处理

_posts 文件夹是 Jekyll 中的一个特殊目录,用于存放博客文章。所有放置在 _posts 中的文件必须按照命名规则命名(如 YEAR-MONTH-DAY-title.md),Jekyll 会根据这些文件的 Front Matter(前置数据)自动生成静态页面。默认情况下,文章页面的 URL 会根据站点配置文件 _config.yml 中的 permalink 设置生成。

例如,以下是一个典型的 _posts 文件:

代码语言:javascript
代码运行次数:0
运行
复制
---
layout: post
title: "我的第一篇文章"
date: 2024-08-27
categories: blog
---
这是我的第一篇博客文章!

上述文件会生成一个位于 /blog/2024/08/27/我的第一篇文章 的页面。

为什么其他以下划线开头的文件夹不会直接生成页面?

Jekyll 默认忽略所有以下划线(_)开头的文件夹(如 _layouts_includes 等),因为这些文件夹通常用于存放模板、布局、数据或其他不直接生成的内容。这些文件夹的内容不会直接生成到静态站点的输出目录中。除非使用自定义配置,否则它们不会出现在最终的 URL 路径中。

如何让其他目录内容可访问?

如果你希望其他目录的内容也能像 _posts 中的文章一样生成并通过 URL 访问,可以使用以下方法:

使用普通文件夹:将文件夹命名为不带下划线的名称(如 pages),这样 Jekyll 会将该目录及其内容直接复制到生成的站点中,保持文件和目录结构。

使用 Collections 功能

  • Jekyll 允许用户定义自定义集合(collections),用于存储除文章以外的其他内容。自定义集合可以像 _posts 一样被特殊处理,生成静态页面。

示例配置

代码语言:javascript
代码运行次数:0
运行
复制
collections:
  tutorials:
    output: true  # 设置为 true 以生成输出
    permalink: /tutorials/:path/

然后,创建一个 _tutorials 文件夹,存放要处理的内容。

**在 Front Matter 中指定 permalink**:

  • 在单个文件的 Front Matter 中手动指定 permalink 属性,可以自定义该文件生成页面的路径。

示例

代码语言:javascript
代码运行次数:0
运行
复制
---
layout: page
title: Custom Page
permalink: /custom/path/
---
自定义页面内容。

这将生成一个位于 /custom/path/ 的页面。

总结

Jekyll 提供了一种灵活的方式来管理和组织网站内容。理解 Jekyll 如何处理不同类型的文件夹可以帮助开发者更好地管理站点内容和生成路径。通过正确配置 _config.yml 和使用 Jekyll 的集合功能,可以实现更多自定义需求,为站点提供更大的灵活性和控制力。

文章作者: Alan Zeng

原始链接:https://cloud.tencent.com/developer/article/2486917

版权说明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 4.0许可协议 。获得许可后,要求转载时注明文章出处和网站链接,谢谢!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-08-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Jekyll 的默认文件夹结构
  • Jekyll 对 _posts 文件夹的特殊处理
  • 为什么其他以下划线开头的文件夹不会直接生成页面?
  • 如何让其他目录内容可访问?
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档