Grav - 页面链接
在本章中,我们将了解如何在 Grav 中链接页面。您可以用简单的方式将一个页面链接到另一个页面,甚至可以使用页面链接将远程页面链接起来。Grav 有许多响应式链接选项。如果您以前使用过 HTML 链接文件,那么理解 Grav 中的页面链接就很容易了。
下面给出了 Grav 站点页面目录的基本示例。我们将使用以下目录作为示例,如图所示。

下面给出了 Grav 链接的一些常见组件。
[Linked Content](../path/slug/page)
[] − 指定写入链接的文本或替代内容。在 HTML 中,我们使用 <a href=""> 和 </a> 来放置内容。
() − URL 放在这个括号中,直接放在方括号后面。
../ −表示向上移动一个目录。
内容中使用了 4 种类型的链接,如下所示 −
Slug 相对
目录相对
绝对
远程
Slug 相对
内部链接不仅限于文件/目录结构中的某些名称。可以从标头和后备目录名称中提取 Slug,这有助于您以后轻松创建链接,因为无需记住任何特定文件名,但可以记住相关的 slug。 Grav 的模板引擎使用文件名称来了解要应用哪个模板。
[link](../dog)
上述代码为您获取以下结果 −

在上面的示例中,您必须向上移动一个目录并从 pages/01.home/02.dog/item.md 加载位于 pages/01.home/02.nature/item.md 目录中的默认页面。文件 item.md 没有分配 slug,因此 Grav 使用目录名称。
接下来,您会发现一个类似的示例,从 pages/01.home/01.dog/item.md 链接到 pages/02.black/01.fish/item.md,但当它加载 item.md 文件时,会将 slug 分配给 01.fish 文件。
[link](../../black/fish)
上述代码为您提供以下结果 −

现在您将看到默认 slug 文件夹名称将被替换为item.md 的标题中有 黑色 个 slug。
目录相对
设置相对的目标用于链接当前页面,该页面可以是图像文件或任何其他文件(根据需要)。文件的位置与目标的位置一样重要。如果在更改路径时移动文件,链接可能会中断。只要文件保持一致,您就可以在本地开发服务器和具有不同域名的实时服务器之间轻松切换。链接应该可以正常工作。
您将直接通过名称指向文件的链接,而不是通过其目录或 slug。您可以使用以下命令创建从 pages/01.home/01.dog/item.md 到 pages/02.black/01.fish/item.md 的链接。
[link](../../02.black/01.fish/item.md)
上述代码为您提供以下结果 −

两个文件夹都向上移动,如 ../../ 所示,然后在底部两个文件夹直接指向 item.md 文件。
绝对链接
它类似于相对链接,基于在 Grav 中的 /user/pages/ 目录中。此外,这可以通过两种方法完成。
Slug 相对样式
目录相对样式
Slug 相对样式
您可以像 slug 相对类型一样执行此操作。它在路径中使用目录名称。它通过断开链接消除了顺序错误和稍后更改。它在开头更改文件夹名称的数字,从而导致链接断开。
下面给出了一个绝对链接的示例,链接以 / 开头。它指定在 pages/01.home/01.dog/item.md 中以 Slug 样式进行绝对链接。
[link](/home/nature)
上述代码为您提供以下结果 −

目录相对样式在与 GitHub 等服务一起使用时更加一致。它们没有 Grav 灵活性的优势。下面您可以看到使用目录相对样式建立到 pages/01.home/01.dog/item.md 的绝对链接的示例。
[link](/01.home/01.dog)
远程
远程链接允许您通过其 URL 直接链接到任何文件或文档。无需包含您自己网站的内容。
以下示例向您展示如何链接到 TutorialsPoint 页面。
[link](http://www.tutorialspoint.com)
上述代码为您提供以下结果 −

您可以直接链接到任何 URL,包括安全的 HTTPS 链接。