aboutsummaryrefslogtreecommitdiffhomepage
path: root/content/en/templates/home.md
diff options
context:
space:
mode:
Diffstat (limited to 'content/en/templates/home.md')
-rw-r--r--content/en/templates/home.md55
1 files changed, 55 insertions, 0 deletions
diff --git a/content/en/templates/home.md b/content/en/templates/home.md
new file mode 100644
index 000000000..3086791c5
--- /dev/null
+++ b/content/en/templates/home.md
@@ -0,0 +1,55 @@
+---
+title: Home templates
+description: The home page of a website is often formatted differently than the other pages. For this reason, Hugo makes it easy for you to define your new site's home page as a unique template.
+categories: [templates]
+keywords: []
+menu:
+ docs:
+ parent: templates
+ weight: 60
+weight: 60
+toc: true
+aliases: [/layout/homepage/,/templates/homepage-template/,/templates/homepage/]
+---
+
+The home template is the *only* required template for building a site and therefore useful when bootstrapping a new site and template. It is also the only required template if you are developing a single-page website.
+
+
+{{< youtube ut1xtRZ1QOA >}}
+
+## Home template lookup order
+
+See [Template Lookup](/templates/lookup-order/).
+
+## Add content and front matter to the home page
+
+The home page accepts content and front matter from an `_index.md` file. This file should live at the root of your `content` folder (i.e., `content/_index.md`). You can then add body copy and metadata to your home page the way you would any other content file.
+
+See the home template below or [Content Organization][contentorg] for more information on the role of `_index.md` in adding content and front matter to list pages.
+
+## Example home template
+
+{{< code file=layouts/_default/home.html >}}
+{{ define "main" }}
+ <main aria-role="main">
+ <header class="home-page-header">
+ <h1>{{ .Title }}</h1>
+ {{ with .Params.subtitle }}
+ <span class="subtitle">{{ . }}</span>
+ {{ end }}
+ </header>
+ <div class="home-page-content">
+ <!-- Note that the content for index.html, as a sort of list page, will pull from content/_index.md -->
+ {{ .Content }}
+ </div>
+ <div>
+ {{ range first 10 .Site.RegularPages }}
+ {{ .Render "summary" }}
+ {{ end }}
+ </div>
+ </main>
+{{ end }}
+{{< /code >}}
+
+[contentorg]: /content-management/organization/
+[lookup]: /templates/lookup-order/