Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 48|回复: 0

[BUG报告] Hugo 静态站点生成器中的上下文和变量

[复制链接]

1

主题

1

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2023-4-13 16:37:01 | 显示全部楼层 |阅读模式
在本文中,我们将探讨流行的静态站点生成器 Hugo 中的上下文和变量主题。您将了解 Hugo 模板中的全局上下文、流控制和变量等概念,以及从内容文件通过模板到部分模板和基本模板的数据流。
在本文中,我们将仔细研究上下文在Hugo 静态站点生成器中的工作原理。我们将研究数据如何从内容流向模板,某些结构如何改变可用数据,以及我们如何将这些数据传递给部分模板和基本模板。

本文不是对 Hugo 的介绍。如果您对 Hugo 有一些经验,您可能会充分利用它,因为我 whatsapp 手机号码列表 们不会从头开始讨论每个概念,而是专注于上下文和变量的主要主题。但是,如果您通篇参考 Hugo 文档,即使没有经验,您也可以跟进!

我们将通过构建示例页面来研究各种概念。不会详细介绍示例站点所需的每个文件,但完整的项目可在 GitHub 上获得。如果您想了解各个部分如何组合在一起,这是一个很好的起点。另请注意,我们不会介绍如何设置Hugo 站点或运行开发服务器——运行示例的说明在存储库中。



什么是静态站点生成器?
如果静态站点生成器的概念对您来说是新的,这里有一个快速介绍!静态站点生成器可能最好通过将它们与动态站点进行比较来描述。像 CMS 这样的动态站点通常会为每次访问从头开始组装一个页面,可能会从数据库中获取数据并组合各种模板来完成此操作。实际上,缓存的使用意味着页面不会经常重新生成,但出于这种比较的目的,我们可以这样想。动态站点非常适合动态内容:经常更改的内容、根据输入以多种不同配置呈现的内容,以及可以由站点访问者操作的内容。

相比之下,许多网站很少更改,也很少接受访问者的输入。应用程序的“帮助”部分、文章列表或电子书可以是此类站点的示例。在这种情况下,更有意义的做法是在内容发生变化时组装一次最终页面,然后向每个访问者提供相同的页面,直到内容再次发生变化。

动态站点具有更大的灵活性,但对运行它们的服务器提出了更多要求。它们也可能难以在地理上分布,尤其是在涉及数据库的情况下。静态站点生成器可以托管在任何能够传送静态文件的服务器上,并且易于分发。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|DiscuzX

GMT+8, 2025-6-8 17:07 , Processed in 0.082600 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表