Resolve URLs

解析所有指向源文件的 URL。

描述

resolve_urls 插件会将你的 HTML 文档中,所有指向 src 文件夹内文件的 URL 转换为最终的 URL。

例如,以下指向 markdown 文件的链接将被转换:

访问 <a href="/about-us.md">关于我们</a>
访问 <a href="/about-us/">关于我们</a>

如果页面 about-us.md 有不同的 URL (因为它在 front matter 中设置了 url 变量),此插件也会相应地使用它。它也适用于会更改输出目录的静态文件。

此插件也解析相对 URL (例如 ../about-us.md),并保留 URL 中的任何锚点或搜索查询 (例如: /about-us.md#contact 将被替换为 /about-us/#contact)。

一个非常常见的用例是在仓库中使用 Markdown 文件编写文档内容。你可能希望这些链接在 GitHub 中能正常工作,但在构建 HTML 站点时,它们会更改为最终的 url。

安装

在你的 _config.ts 文件中导入此插件以使用它:

import lume from "lume/mod.ts";
import resolveUrls from "lume/plugins/resolve_urls.ts";

const site = lume();

site.use(resolveUrls());

export default site;