mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-21 20:46:30 -05:00
Merge commit 'e81208265bb3cdb7606d051a23d83aeebcb7d34d'
This commit is contained in:
commit
22b213b1a4
21 changed files with 258 additions and 184 deletions
|
@ -57,6 +57,8 @@ twitter = "GoHugoIO"
|
|||
removefromexternalsearch = false
|
||||
## Gh repo for site footer (include trailing slash)
|
||||
ghrepo = "https://github.com/gohugoio/hugoDocs/"
|
||||
## GH Repo for filing a new issue
|
||||
github_repo = "https://github.com/gohugoio/hugo/issues/new"
|
||||
### Edit content repo (set to automatically enter "edit" mode; this is good for "improve this page" links)
|
||||
ghdocsrepo = "https://github.com/gohugoio/hugoDocs/tree/master/docs"
|
||||
## Gitter URL
|
||||
|
|
|
@ -96,8 +96,8 @@ More information about document unique identifiers and headings can be found [be
|
|||
|
||||
### Examples
|
||||
|
||||
* `{{</* ref "blog/post.md" */>}}` => `http://example.com/blog/post/`
|
||||
* `{{</* ref "post.md#tldr" */>}}` => `http://example.com/blog/post/#tldr:caffebad`
|
||||
* `{{</* ref "blog/post.md" */>}}` => `https://example.com/blog/post/`
|
||||
* `{{</* ref "post.md#tldr" */>}}` => `https://example.com/blog/post/#tldr:caffebad`
|
||||
* `{{</* relref "post.md" */>}}` => `/blog/post/`
|
||||
* `{{</* relref "blog/post.md#tldr" */>}}` => `/blog/post/#tldr:caffebad`
|
||||
* `{{</* ref "#tldr" */>}}` => `#tldr:badcaffe`
|
||||
|
|
|
@ -54,7 +54,7 @@ slug = "spf13-vim-3-0-release-and-new-website"
|
|||
---
|
||||
title: "spf13-vim 3.0 release and new website"
|
||||
description: "spf13-vim is a cross platform distribution of vim plugins and resources for Vim."
|
||||
#tags: [ ".vimrc", "plugins", "spf13-vim", "vim" ]
|
||||
tags: [ ".vimrc", "plugins", "spf13-vim", "vim" ]
|
||||
lastmod: 2015-12-23
|
||||
date: "2012-04-06"
|
||||
categories:
|
||||
|
|
|
@ -153,7 +153,7 @@ menu:
|
|||
{{< /code >}}
|
||||
|
||||
{{% note %}}
|
||||
The URLs must be relative to the context root. If the `baseURL` is `http://example.com/mysite/`, then the URLs in the menu must not include the context root `mysite`. Using an absolute URL will overide the baseURL. If the value used for `URL` in the above example is `http://subdomain.example.com/`, the output will be `http://subdomain.example.com`.
|
||||
The URLs must be relative to the context root. If the `baseURL` is `https://example.com/mysite/`, then the URLs in the menu must not include the context root `mysite`. Using an absolute URL will overide the baseURL. If the value used for `URL` in the above example is `https://subdomain.example.com/`, the output will be `https://subdomain.example.com`.
|
||||
{{% /note %}}
|
||||
|
||||
## Nesting
|
||||
|
|
|
@ -34,20 +34,20 @@ While Hugo supports content nested at any level, the top levels (i.e. `content/<
|
|||
.
|
||||
└── content
|
||||
└── about
|
||||
| └── _index.md // <- http://example.com/about/
|
||||
| └── _index.md // <- https://example.com/about/
|
||||
├── post
|
||||
| ├── firstpost.md // <- http://example.com/post/firstpost/
|
||||
| ├── firstpost.md // <- https://example.com/post/firstpost/
|
||||
| ├── happy
|
||||
| | └── ness.md // <- http://example.com/post/happy/ness/
|
||||
| └── secondpost.md // <- http://example.com/post/secondpost/
|
||||
| | └── ness.md // <- https://example.com/post/happy/ness/
|
||||
| └── secondpost.md // <- https://example.com/post/secondpost/
|
||||
└── quote
|
||||
├── first.md // <- http://example.com/quote/first/
|
||||
└── second.md // <- http://example.com/quote/second/
|
||||
├── first.md // <- https://example.com/quote/first/
|
||||
└── second.md // <- https://example.com/quote/second/
|
||||
```
|
||||
|
||||
## Path Breakdown in Hugo
|
||||
|
||||
The following demonstrates the relationships between your content organization and the output URL structure for your Hugo website when it renders. These examples assume you are [using pretty URLs][pretty], which is the default behavior for Hugo. The examples also assume a key-value of `baseurl = "http://example.com"` in your [site's configuration file][config].
|
||||
The following demonstrates the relationships between your content organization and the output URL structure for your Hugo website when it renders. These examples assume you are [using pretty URLs][pretty], which is the default behavior for Hugo. The examples also assume a key-value of `baseurl = "https://example.com"` in your [site's configuration file][config].
|
||||
|
||||
### Index Pages: `_index.md`
|
||||
|
||||
|
@ -76,7 +76,7 @@ At build, this will output to the following destination with the associated valu
|
|||
⊢--------^---------⊣⊢-^-⊣
|
||||
permalink
|
||||
⊢----------^-------------⊣
|
||||
http://example.com/posts/index.html
|
||||
https://example.com/posts/index.html
|
||||
```
|
||||
|
||||
### Single Pages in Sections
|
||||
|
@ -102,7 +102,7 @@ At the time Hugo builds your site, the content will be output to the following d
|
|||
⊢--------^--------⊣⊢-^--⊣⊢-------^---------⊣
|
||||
permalink
|
||||
⊢--------------------^---------------------⊣
|
||||
http://example.com/posts/my-first-hugo-post/index.html
|
||||
https://example.com/posts/my-first-hugo-post/index.html
|
||||
```
|
||||
|
||||
### Section with Nested Directories
|
||||
|
@ -120,7 +120,7 @@ To continue the example, the following demonstrates destination paths for a file
|
|||
⊢--------^--------⊣ ⊢------^-----⊣⊢----^------⊣
|
||||
permalink
|
||||
⊢----------------------^-----------------------⊣
|
||||
http://example.com/events/chicago/lollapalooza/
|
||||
https://example.com/events/chicago/lollapalooza/
|
||||
```
|
||||
|
||||
{{% note %}}
|
||||
|
@ -201,9 +201,9 @@ layout: mylayout
|
|||
---
|
||||
{{< /code >}}
|
||||
<!-- See https://discourse.gohugo.io/t/path-not-works/6387 -->
|
||||
<!-- ### `path`
|
||||
<!-- ### `path`-->
|
||||
|
||||
`path` can be provided in the front matter. This will replace the actual path to the file on disk. Destination will create the destination with the same path, including the section. -->
|
||||
<!--`path` can be provided in the front matter. This will replace the actual path to the file on disk. Destination will create the destination with the same path, including the section. -->
|
||||
|
||||
### `url`
|
||||
|
||||
|
|
|
@ -163,7 +163,7 @@ project_url = "https://github.com/gohugoio/hugo"
|
|||
```
|
||||
---
|
||||
title: "Hugo: A fast and flexible static site generator"
|
||||
#tags: ["Development", "Go", "fast", "Blogging"]
|
||||
tags: ["Development", "Go", "fast", "Blogging"]
|
||||
categories: ["Development"]
|
||||
series: ["Go Web Dev"]
|
||||
slug: "hugo"
|
||||
|
@ -216,7 +216,7 @@ categories_weight = 44
|
|||
```
|
||||
---
|
||||
title: foo
|
||||
#tags: [ "a", "b", "c" ]
|
||||
tags: [ "a", "b", "c" ]
|
||||
tags_weight: 22
|
||||
categories: ["d"]
|
||||
categories_weight: 44
|
||||
|
|
|
@ -43,7 +43,7 @@ permalinks:
|
|||
post = "/:year/:month/:title/"
|
||||
{{< /code >}}
|
||||
|
||||
Only the content under `post/` will have the new URL structure. For example, the file `content/post/sample-entry.md` with `date: 2017-02-27T19:20:00-05:00` in its front matter will render to `public/2017/02/sample-entry/index.html` at build time and therefore be reachable at `http://example.com/2013/11/sample-entry/`.
|
||||
Only the content under `post/` will have the new URL structure. For example, the file `content/post/sample-entry.md` with `date: 2017-02-27T19:20:00-05:00` in its front matter will render to `public/2017/02/sample-entry/index.html` at build time and therefore be reachable at `https://example.com/2013/11/sample-entry/`.
|
||||
|
||||
### Permalink Configuration Values
|
||||
|
||||
|
@ -147,11 +147,11 @@ Assuming a `baseURL` of `example.com`, the contents of the auto-generated alias
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>http://example.com/posts/my-intended-url</title>
|
||||
<link rel="canonical" href="http://example.com/posts/my-intended-url"/>
|
||||
<title>https://example.com/posts/my-intended-url</title>
|
||||
<link rel="canonical" href="https://example.com/posts/my-intended-url"/>
|
||||
<meta name=\"robots\" content=\"noindex\">
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
|
||||
<meta http-equiv="refresh" content="0; url=http://example.com/posts/my-intended-url"/>
|
||||
<meta http-equiv="refresh" content="0; url=https://example.com/posts/my-intended-url"/>
|
||||
</head>
|
||||
</html>
|
||||
```
|
||||
|
@ -190,7 +190,7 @@ content/posts/post-1.md
|
|||
|
||||
## Ugly URLs
|
||||
|
||||
If you would like to have are often referred to as "ugly URLs" (e.g., example.com/urls.html), set `uglyurls = true` or `uglyurls: true` in your site's `config.toml` or `config.yaml`, respectively. You can also use the `--uglyURLs=true` [flag from the command line][usage] with `hugo` or `hugo server`..
|
||||
If you would like to have what are often referred to as "ugly URLs" (e.g., example.com/urls.html), set `uglyurls = true` or `uglyurls: true` in your site's `config.toml` or `config.yaml`, respectively. You can also use the `--uglyURLs=true` [flag from the command line][usage] with `hugo` or `hugo server`..
|
||||
|
||||
If you want a specific piece of content to have an exact URL, you can specify this in the [front matter][] under the `url` key. The following are examples of the same content directory and what the eventual URL structure will be when Hugo runs with its default behavior.
|
||||
|
||||
|
@ -200,15 +200,15 @@ See [Content Organization][contentorg] for more details on paths.
|
|||
.
|
||||
└── content
|
||||
└── about
|
||||
| └── _index.md // <- http://example.com/about/
|
||||
| └── _index.md // <- https://example.com/about/
|
||||
├── post
|
||||
| ├── firstpost.md // <- http://example.com/post/firstpost/
|
||||
| ├── firstpost.md // <- https://example.com/post/firstpost/
|
||||
| ├── happy
|
||||
| | └── ness.md // <- http://example.com/post/happy/ness/
|
||||
| └── secondpost.md // <- http://example.com/post/secondpost/
|
||||
| | └── ness.md // <- https://example.com/post/happy/ness/
|
||||
| └── secondpost.md // <- https://example.com/post/secondpost/
|
||||
└── quote
|
||||
├── first.md // <- http://example.com/quote/first/
|
||||
└── second.md // <- http://example.com/quote/second/
|
||||
├── first.md // <- https://example.com/quote/first/
|
||||
└── second.md // <- https://example.com/quote/second/
|
||||
```
|
||||
|
||||
Here's the same organization run with `hugo --uglyURLs`:
|
||||
|
@ -217,15 +217,15 @@ Here's the same organization run with `hugo --uglyURLs`:
|
|||
.
|
||||
└── content
|
||||
└── about
|
||||
| └── _index.md // <- http://example.com/about/index.html
|
||||
| └── _index.md // <- https://example.com/about/index.html
|
||||
├── post
|
||||
| ├── firstpost.md // <- http://example.com/post/firstpost.html
|
||||
| ├── firstpost.md // <- https://example.com/post/firstpost.html
|
||||
| ├── happy
|
||||
| | └── ness.md // <- http://example.com/post/happy/ness.html
|
||||
| └── secondpost.md // <- http://example.com/post/secondpost.html
|
||||
| | └── ness.md // <- https://example.com/post/happy/ness.html
|
||||
| └── secondpost.md // <- https://example.com/post/secondpost.html
|
||||
└── quote
|
||||
├── first.md // <- http://example.com/quote/first.html
|
||||
└── second.md // <- http://example.com/quote/second.html
|
||||
├── first.md // <- https://example.com/quote/first.html
|
||||
└── second.md // <- https://example.com/quote/second.html
|
||||
```
|
||||
|
||||
|
||||
|
@ -233,7 +233,7 @@ Here's the same organization run with `hugo --uglyURLs`:
|
|||
|
||||
By default, all relative URLs encountered in the input are left unmodified, e.g. `/css/foo.css` would stay as `/css/foo.css`. The `canonifyURLs` field in your site `config` has a default value of `false`.
|
||||
|
||||
By setting `canonifyURLs` to `true`, all relative URLs would instead be *canonicalized* using `baseURL`. For example, assuming you have `baseURL = https://example.com/`, the relative URL `/css/foo.css` would be turned into the absolute URL `http://example.com/css/foo.css`.
|
||||
By setting `canonifyURLs` to `true`, all relative URLs would instead be *canonicalized* using `baseURL`. For example, assuming you have `baseURL = https://example.com/`, the relative URL `/css/foo.css` would be turned into the absolute URL `https://example.com/css/foo.css`.
|
||||
|
||||
Benefits of canonicalization include fixing all URLs to be absolute, which may aid with some parsing tasks. Note, however, that all modern browsers handle this on the client without issue.
|
||||
|
||||
|
|
|
@ -139,6 +139,12 @@ So, let's clone that master repository:
|
|||
go get -v -u github.com/gohugoio/hugo
|
||||
```
|
||||
|
||||
Hugo relies on [Testify](https://github.com/stretchr/testify) for testing Go code. If you don't already have it, get the Testify testing tools:
|
||||
|
||||
```
|
||||
go get github.com/stretchr/testify
|
||||
```
|
||||
|
||||
### Fork the repository
|
||||
|
||||
If you're not fimiliar with this term, GitHub's [help pages](https://help.github.com/articles/fork-a-repo/) provide again a simple explanation:
|
||||
|
|
|
@ -64,7 +64,7 @@ name = ""
|
|||
license = "MIT"
|
||||
licenselink = "https://github.com/<YOURNAME>/<YOURTHEME>/blob/master/LICENSE.md"
|
||||
description = ""
|
||||
homepage = "http://example.com/"
|
||||
homepage = "https://example.com/"
|
||||
tags = []
|
||||
features = []
|
||||
min_version = 0.19
|
||||
|
|
|
@ -20,9 +20,9 @@ aliases: []
|
|||
|
||||
Both `absLangURL` and [`relLangURL`](/functions/rellangurl/) are similar to their [`absURL`](/functions/absurl/) and [`relURL`](/functions/relurl) relatives but will add the correct language prefix when the site is configured with more than one language.
|
||||
|
||||
So for a site `baseURL` set to `http://example.com/hugo/` and the current language is `en`:
|
||||
So for a site `baseURL` set to `https://example.com/hugo/` and the current language is `en`:
|
||||
|
||||
```
|
||||
{{ "blog/" | absLangURL }} → "http://example.com/hugo/en/blog/"
|
||||
{{ "blog/" | absLangURL }} → "https://example.com/hugo/en/blog/"
|
||||
{{ "blog/" | relLangURL }} → "/hugo/en/blog/"
|
||||
```
|
||||
|
|
|
@ -18,10 +18,10 @@ deprecated: false
|
|||
aliases: []
|
||||
---
|
||||
|
||||
Both `absURL` and `relURL` consider the configured value of `baseURL` in your site's [`config` file][configuration]. Given a `baseURL` set to `http://example.com/hugo/`:
|
||||
Both `absURL` and `relURL` consider the configured value of `baseURL` in your site's [`config` file][configuration]. Given a `baseURL` set to `https://example.com/hugo/`:
|
||||
|
||||
```
|
||||
{{ "mystyle.css" | absURL }} → "http://example.com/hugo/mystyle.css"
|
||||
{{ "mystyle.css" | absURL }} → "https://example.com/hugo/mystyle.css"
|
||||
{{ "mystyle.css" | relURL }} → "/hugo/mystyle.css"
|
||||
{{ "http://gohugo.io/" | relURL }} → "http://gohugo.io/"
|
||||
{{ "http://gohugo.io/" | absURL }} → "http://gohugo.io/"
|
||||
|
|
|
@ -38,7 +38,7 @@ You can also use the `add` function with strings. You may like this functionalit
|
|||
For example, social media sharing with [Twitter Cards][cards] requires the following `meta` link in your site's `<head>` to display Twitter's ["Summary Card with Large Image"][twtsummary]:
|
||||
|
||||
```
|
||||
<meta name="twitter:image" content="http://example.com/images/my-twitter-image.jpg">
|
||||
<meta name="twitter:image" content="https://example.com/images/my-twitter-image.jpg">
|
||||
```
|
||||
|
||||
Let's assume you have an `image` field in the front matter of each of your content files:
|
||||
|
|
|
@ -20,10 +20,10 @@ aliases: []
|
|||
|
||||
`absLangURL` and `relLangURL` functions are similar to their [`absURL`](/functions/absurl/) and [`relURL`](/functions/relurl/) relatives but will add the correct language prefix when the site is configured with more than one language. (See [Configuring Multilingual][multiliconfig].)
|
||||
|
||||
So for a site `baseURL` set to `http://example.com/hugo/` and the current language is `en`:
|
||||
So for a site `baseURL` set to `https://example.com/hugo/` and the current language is `en`:
|
||||
|
||||
```
|
||||
{{ "blog/" | absLangURL }} → "http://example.com/hugo/en/blog/"
|
||||
{{ "blog/" | absLangURL }} → "https://example.com/hugo/en/blog/"
|
||||
{{ "blog/" | relLangURL }} → "/hugo/en/blog/"
|
||||
```
|
||||
|
||||
|
|
|
@ -18,10 +18,10 @@ deprecated: false
|
|||
aliases: []
|
||||
---
|
||||
|
||||
Both `absURL` and `relURL` consider the configured value of `baseURL` in your site's [`config` file][configuration]. Given a `baseURL` set to `http://example.com/hugo/`:
|
||||
Both `absURL` and `relURL` consider the configured value of `baseURL` in your site's [`config` file][configuration]. Given a `baseURL` set to `https://example.com/hugo/`:
|
||||
|
||||
```
|
||||
{{ "mystyle.css" | absURL }} → "http://example.com/hugo/mystyle.css"
|
||||
{{ "mystyle.css" | absURL }} → "https://example.com/hugo/mystyle.css"
|
||||
{{ "mystyle.css" | relURL }} → "/hugo/mystyle.css"
|
||||
{{ "http://gohugo.io/" | relURL }} → "http://gohugo.io/"
|
||||
{{ "http://gohugo.io/" | absURL }} → "http://gohugo.io/"
|
||||
|
|
|
@ -23,3 +23,11 @@ aliases: []
|
|||
```
|
||||
{{title "BatMan"}}` → "Batman"
|
||||
```
|
||||
|
||||
Can be combined in pipes. In the following snippet, the link text is cleaned up using `humanize` to remove dashes and `title` to convert the value of `$name` to Intial Caps.
|
||||
|
||||
```
|
||||
{{ range $name, $items := .Site.Taxonomies.categories }}
|
||||
<li><a href="{{ printf "%s/%s" "categories" ($name | urlize | lower) | absURL }}">{{ $name | humanize | title }} ({{ len $items }})</a></li>
|
||||
{{ end }}
|
||||
```
|
||||
|
|
|
@ -118,7 +118,7 @@ Your new site already looks great, but you will want to tweak it a little before
|
|||
Open up `config.toml` in a text editor:
|
||||
|
||||
```
|
||||
baseURL = "http://example.org/"
|
||||
baseURL = "https://example.org/"
|
||||
languageCode = "en-us"
|
||||
title = "My New Hugo Site"
|
||||
theme = "ananke"
|
||||
|
|
|
@ -26,7 +26,7 @@ A [media type][] (also known as *MIME type* and *content type*) is a two-part id
|
|||
|
||||
This is the full set of built-in media types in Hugo:
|
||||
|
||||
{{< datatable "media" "types" "Type" "Suffix" >}}
|
||||
{{< datatable "media" "types" "type" "suffix" >}}
|
||||
|
||||
**Note:**
|
||||
|
||||
|
@ -55,7 +55,7 @@ Given a media type and some additional configuration, you get an `Output Format`
|
|||
|
||||
This is the full set of Hugo's built-in output formats:
|
||||
|
||||
{{< datatable "output" "formats" "Name" "MediaType" "Path" "BaseName" "Rel" "Protocol" "IsPlainText" "IsHTML" "NoUgly">}}
|
||||
{{< datatable "output" "formats" "name" "mediaType" "path" "baseName" "rel" "protocol" "isPlainText" "isHTML" "noUgly">}}
|
||||
|
||||
* A page can be output in as many output formats as you want, and you can have an infinite amount of output formats defined **as long as they resolve to a unique path on the file system**. In the above table, the best example of this is `AMP` vs. `HTML`. `AMP` has the value `amp` for `Path` so it doesn't overwrite the `HTML` version; e.g. we can now have both `/index.html` and `/amp/index.html`.
|
||||
* The `MediaType` must match the `Type` of an already defined media type.
|
||||
|
@ -71,40 +71,40 @@ isPlainText = true
|
|||
protocol = "bep://"
|
||||
```
|
||||
|
||||
The above example is fictional, but if used for the homepage on a site with `baseURL` `http://example.org`, it will produce a plain text homepage with the URL `bep://example.org/myindex.enr`.
|
||||
The above example is fictional, but if used for the homepage on a site with `baseURL` `https://example.org`, it will produce a plain text homepage with the URL `bep://example.org/myindex.enr`.
|
||||
|
||||
### Configure Output Formats
|
||||
|
||||
The following is the full list of configuration options for output formats and their default values:
|
||||
|
||||
`Name`
|
||||
`name`
|
||||
: the output format identifier. This is used to define what output format(s) you want for your pages.
|
||||
|
||||
`MediaType`
|
||||
`mediaType`
|
||||
: this must match the `Type` of a defined media type.
|
||||
|
||||
`Path`
|
||||
`path`
|
||||
: sub path to save the output files.
|
||||
|
||||
`BaseName`
|
||||
`baseName`
|
||||
: the base filename for the list filenames (homepage, etc.). **Default:** `index`.
|
||||
|
||||
`Rel`
|
||||
`rel`
|
||||
: can be used to create `rel` values in `link` tags. **Default:** `alternate`.
|
||||
|
||||
`Protocol`
|
||||
`protocol`
|
||||
: will replace the "http://" or "https://" in your `baseURL` for this output format.
|
||||
|
||||
`IsPlainText`
|
||||
`isPlainText`
|
||||
: use Go's plain text templates parser for the templates. **Default:** `false`.
|
||||
|
||||
`IsHTML`
|
||||
`isHTML`
|
||||
: used in situations only relevant for `HTML`-type formats; e.g., page aliases.
|
||||
|
||||
`NoUgly`
|
||||
`noUgly`
|
||||
: used to turn off ugly URLs If `uglyURLs` is set to `true` in your site. **Default:** `false`.
|
||||
|
||||
`NotAlternative`
|
||||
`notAlternative`
|
||||
: enable if it doesn't make sense to include this format in an `AlternativeOutputFormats` format listing on `Page` (e.g., with `CSS`). Note that we use the term *alternative* and not *alternate* here, as it does not necessarily replace the other format. **Default:** `false`.
|
||||
|
||||
## Output Formats for Pages
|
||||
|
|
|
@ -84,24 +84,26 @@ This is the default RSS template that ships with Hugo. It adheres to the [RSS 2.
|
|||
```
|
||||
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
|
||||
<channel>
|
||||
<title>{{ with .Title }}{{.}} on {{ end }}{{ .Site.Title }}</title>
|
||||
<title>{{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{.}} on {{ end }}{{ .Site.Title }}{{ end }}</title>
|
||||
<link>{{ .Permalink }}</link>
|
||||
<description>Recent content {{ with .Title }}in {{.}} {{ end }}on {{ .Site.Title }}</description>
|
||||
<description>Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{.}} {{ end }}{{ end }}on {{ .Site.Title }}</description>
|
||||
<generator>Hugo -- gohugo.io</generator>{{ with .Site.LanguageCode }}
|
||||
<language>{{.}}</language>{{end}}{{ with .Site.Author.email }}
|
||||
<managingEditor>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</managingEditor>{{end}}{{ with .Site.Author.email }}
|
||||
<webMaster>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</webMaster>{{end}}{{ with .Site.Copyright }}
|
||||
<copyright>{{.}}</copyright>{{end}}{{ if not .Date.IsZero }}
|
||||
<lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>{{ end }}
|
||||
<atom:link href="{{.URL}}" rel="self" type="application/rss+xml" />
|
||||
{{ range first 15 .Data.Pages }}
|
||||
{{ with .OutputFormats.Get "RSS" }}
|
||||
{{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }}
|
||||
{{ end }}
|
||||
{{ range .Data.Pages }}
|
||||
<item>
|
||||
<title>{{ .Title }}</title>
|
||||
<link>{{ .Permalink }}</link>
|
||||
<pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
|
||||
{{ with .Site.Author.email }}<author>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</author>{{end}}
|
||||
<guid>{{ .Permalink }}</guid>
|
||||
<description>{{ .Content | html }}</description>
|
||||
<description>{{ .Summary | html }}</description>
|
||||
</item>
|
||||
{{ end }}
|
||||
</channel>
|
||||
|
|
|
@ -179,7 +179,7 @@ Any other value defined in the front matter in a content file, including taxonom
|
|||
title: My First Post
|
||||
date: date: 2017-02-20T15:26:23-06:00
|
||||
categories: [one]
|
||||
#tags: [two,three,four]
|
||||
tags: [two,three,four]
|
||||
```
|
||||
|
||||
With the above front matter, the `tags` and `categories` taxonomies are accessible via the following:
|
||||
|
|
|
@ -109,7 +109,7 @@ The following is a list of site-level (aka "global") variables. Many of these va
|
|||
The following `config.toml` defines a site-wide param for `description`:
|
||||
|
||||
```
|
||||
baseURL = "http://yoursite.example.com/"
|
||||
baseURL = "https://yoursite.example.com/"
|
||||
|
||||
[params]
|
||||
description = "Tesla's Awesome Hugo Site"
|
||||
|
|
|
@ -2,76 +2,76 @@
|
|||
"media": {
|
||||
"types": [
|
||||
{
|
||||
"Type": "application/javascript",
|
||||
"String": "application/javascript+js",
|
||||
"MainType": "application",
|
||||
"SubType": "javascript",
|
||||
"Suffix": "js",
|
||||
"Delimiter": "."
|
||||
"type": "application/javascript",
|
||||
"string": "application/javascript+js",
|
||||
"mainType": "application",
|
||||
"subType": "javascript",
|
||||
"suffix": "js",
|
||||
"delimiter": "."
|
||||
},
|
||||
{
|
||||
"Type": "application/json",
|
||||
"String": "application/json+json",
|
||||
"MainType": "application",
|
||||
"SubType": "json",
|
||||
"Suffix": "json",
|
||||
"Delimiter": "."
|
||||
"type": "application/json",
|
||||
"string": "application/json+json",
|
||||
"mainType": "application",
|
||||
"subType": "json",
|
||||
"suffix": "json",
|
||||
"delimiter": "."
|
||||
},
|
||||
{
|
||||
"Type": "application/rss",
|
||||
"String": "application/rss+xml",
|
||||
"MainType": "application",
|
||||
"SubType": "rss",
|
||||
"Suffix": "xml",
|
||||
"Delimiter": "."
|
||||
"type": "application/rss",
|
||||
"string": "application/rss+xml",
|
||||
"mainType": "application",
|
||||
"subType": "rss",
|
||||
"suffix": "xml",
|
||||
"delimiter": "."
|
||||
},
|
||||
{
|
||||
"Type": "application/xml",
|
||||
"String": "application/xml+xml",
|
||||
"MainType": "application",
|
||||
"SubType": "xml",
|
||||
"Suffix": "xml",
|
||||
"Delimiter": "."
|
||||
"type": "application/xml",
|
||||
"string": "application/xml+xml",
|
||||
"mainType": "application",
|
||||
"subType": "xml",
|
||||
"suffix": "xml",
|
||||
"delimiter": "."
|
||||
},
|
||||
{
|
||||
"Type": "text/calendar",
|
||||
"String": "text/calendar+ics",
|
||||
"MainType": "text",
|
||||
"SubType": "calendar",
|
||||
"Suffix": "ics",
|
||||
"Delimiter": "."
|
||||
"type": "text/calendar",
|
||||
"string": "text/calendar+ics",
|
||||
"mainType": "text",
|
||||
"subType": "calendar",
|
||||
"suffix": "ics",
|
||||
"delimiter": "."
|
||||
},
|
||||
{
|
||||
"Type": "text/css",
|
||||
"String": "text/css+css",
|
||||
"MainType": "text",
|
||||
"SubType": "css",
|
||||
"Suffix": "css",
|
||||
"Delimiter": "."
|
||||
"type": "text/css",
|
||||
"string": "text/css+css",
|
||||
"mainType": "text",
|
||||
"subType": "css",
|
||||
"suffix": "css",
|
||||
"delimiter": "."
|
||||
},
|
||||
{
|
||||
"Type": "text/csv",
|
||||
"String": "text/csv+csv",
|
||||
"MainType": "text",
|
||||
"SubType": "csv",
|
||||
"Suffix": "csv",
|
||||
"Delimiter": "."
|
||||
"type": "text/csv",
|
||||
"string": "text/csv+csv",
|
||||
"mainType": "text",
|
||||
"subType": "csv",
|
||||
"suffix": "csv",
|
||||
"delimiter": "."
|
||||
},
|
||||
{
|
||||
"Type": "text/html",
|
||||
"String": "text/html+html",
|
||||
"MainType": "text",
|
||||
"SubType": "html",
|
||||
"Suffix": "html",
|
||||
"Delimiter": "."
|
||||
"type": "text/html",
|
||||
"string": "text/html+html",
|
||||
"mainType": "text",
|
||||
"subType": "html",
|
||||
"suffix": "html",
|
||||
"delimiter": "."
|
||||
},
|
||||
{
|
||||
"Type": "text/plain",
|
||||
"String": "text/plain+txt",
|
||||
"MainType": "text",
|
||||
"SubType": "plain",
|
||||
"Suffix": "txt",
|
||||
"Delimiter": "."
|
||||
"type": "text/plain",
|
||||
"string": "text/plain+txt",
|
||||
"mainType": "text",
|
||||
"subType": "plain",
|
||||
"suffix": "txt",
|
||||
"delimiter": "."
|
||||
}
|
||||
]
|
||||
},
|
||||
|
@ -79,87 +79,143 @@
|
|||
"formats": [
|
||||
{
|
||||
"MediaType": "text/html+html",
|
||||
"Name": "AMP",
|
||||
"Path": "amp",
|
||||
"BaseName": "index",
|
||||
"Rel": "amphtml",
|
||||
"Protocol": "",
|
||||
"IsPlainText": false,
|
||||
"IsHTML": true,
|
||||
"NoUgly": false,
|
||||
"NotAlternative": false
|
||||
"name": "AMP",
|
||||
"mediaType": {
|
||||
"type": "text/html",
|
||||
"string": "text/html+html",
|
||||
"mainType": "text",
|
||||
"subType": "html",
|
||||
"suffix": "html",
|
||||
"delimiter": "."
|
||||
},
|
||||
"path": "amp",
|
||||
"baseName": "index",
|
||||
"rel": "amphtml",
|
||||
"protocol": "",
|
||||
"isPlainText": false,
|
||||
"isHTML": true,
|
||||
"noUgly": false,
|
||||
"notAlternative": false
|
||||
},
|
||||
{
|
||||
"MediaType": "text/css+css",
|
||||
"Name": "CSS",
|
||||
"Path": "",
|
||||
"BaseName": "styles",
|
||||
"Rel": "stylesheet",
|
||||
"Protocol": "",
|
||||
"IsPlainText": true,
|
||||
"IsHTML": false,
|
||||
"NoUgly": false,
|
||||
"NotAlternative": true
|
||||
"name": "CSS",
|
||||
"mediaType": {
|
||||
"type": "text/css",
|
||||
"string": "text/css+css",
|
||||
"mainType": "text",
|
||||
"subType": "css",
|
||||
"suffix": "css",
|
||||
"delimiter": "."
|
||||
},
|
||||
"path": "",
|
||||
"baseName": "styles",
|
||||
"rel": "stylesheet",
|
||||
"protocol": "",
|
||||
"isPlainText": true,
|
||||
"isHTML": false,
|
||||
"noUgly": false,
|
||||
"notAlternative": true
|
||||
},
|
||||
{
|
||||
"MediaType": "text/csv+csv",
|
||||
"Name": "CSV",
|
||||
"Path": "",
|
||||
"BaseName": "index",
|
||||
"Rel": "alternate",
|
||||
"Protocol": "",
|
||||
"IsPlainText": true,
|
||||
"IsHTML": false,
|
||||
"NoUgly": false,
|
||||
"NotAlternative": false
|
||||
"name": "CSV",
|
||||
"mediaType": {
|
||||
"type": "text/csv",
|
||||
"string": "text/csv+csv",
|
||||
"mainType": "text",
|
||||
"subType": "csv",
|
||||
"suffix": "csv",
|
||||
"delimiter": "."
|
||||
},
|
||||
"path": "",
|
||||
"baseName": "index",
|
||||
"rel": "alternate",
|
||||
"protocol": "",
|
||||
"isPlainText": true,
|
||||
"isHTML": false,
|
||||
"noUgly": false,
|
||||
"notAlternative": false
|
||||
},
|
||||
{
|
||||
"MediaType": "text/calendar+ics",
|
||||
"Name": "Calendar",
|
||||
"Path": "",
|
||||
"BaseName": "index",
|
||||
"Rel": "alternate",
|
||||
"Protocol": "webcal://",
|
||||
"IsPlainText": true,
|
||||
"IsHTML": false,
|
||||
"NoUgly": false,
|
||||
"NotAlternative": false
|
||||
"name": "Calendar",
|
||||
"mediaType": {
|
||||
"type": "text/calendar",
|
||||
"string": "text/calendar+ics",
|
||||
"mainType": "text",
|
||||
"subType": "calendar",
|
||||
"suffix": "ics",
|
||||
"delimiter": "."
|
||||
},
|
||||
"path": "",
|
||||
"baseName": "index",
|
||||
"rel": "alternate",
|
||||
"protocol": "webcal://",
|
||||
"isPlainText": true,
|
||||
"isHTML": false,
|
||||
"noUgly": false,
|
||||
"notAlternative": false
|
||||
},
|
||||
{
|
||||
"MediaType": "text/html+html",
|
||||
"Name": "HTML",
|
||||
"Path": "",
|
||||
"BaseName": "index",
|
||||
"Rel": "canonical",
|
||||
"Protocol": "",
|
||||
"IsPlainText": false,
|
||||
"IsHTML": true,
|
||||
"NoUgly": false,
|
||||
"NotAlternative": false
|
||||
"name": "HTML",
|
||||
"mediaType": {
|
||||
"type": "text/html",
|
||||
"string": "text/html+html",
|
||||
"mainType": "text",
|
||||
"subType": "html",
|
||||
"suffix": "html",
|
||||
"delimiter": "."
|
||||
},
|
||||
"path": "",
|
||||
"baseName": "index",
|
||||
"rel": "canonical",
|
||||
"protocol": "",
|
||||
"isPlainText": false,
|
||||
"isHTML": true,
|
||||
"noUgly": false,
|
||||
"notAlternative": false
|
||||
},
|
||||
{
|
||||
"MediaType": "application/json+json",
|
||||
"Name": "JSON",
|
||||
"Path": "",
|
||||
"BaseName": "index",
|
||||
"Rel": "alternate",
|
||||
"Protocol": "",
|
||||
"IsPlainText": true,
|
||||
"IsHTML": false,
|
||||
"NoUgly": false,
|
||||
"NotAlternative": false
|
||||
"name": "JSON",
|
||||
"mediaType": {
|
||||
"type": "application/json",
|
||||
"string": "application/json+json",
|
||||
"mainType": "application",
|
||||
"subType": "json",
|
||||
"suffix": "json",
|
||||
"delimiter": "."
|
||||
},
|
||||
"path": "",
|
||||
"baseName": "index",
|
||||
"rel": "alternate",
|
||||
"protocol": "",
|
||||
"isPlainText": true,
|
||||
"isHTML": false,
|
||||
"noUgly": false,
|
||||
"notAlternative": false
|
||||
},
|
||||
{
|
||||
"MediaType": "application/rss+xml",
|
||||
"Name": "RSS",
|
||||
"Path": "",
|
||||
"BaseName": "index",
|
||||
"Rel": "alternate",
|
||||
"Protocol": "",
|
||||
"IsPlainText": false,
|
||||
"IsHTML": false,
|
||||
"NoUgly": true,
|
||||
"NotAlternative": false
|
||||
"name": "RSS",
|
||||
"mediaType": {
|
||||
"type": "application/rss",
|
||||
"string": "application/rss+xml",
|
||||
"mainType": "application",
|
||||
"subType": "rss",
|
||||
"suffix": "xml",
|
||||
"delimiter": "."
|
||||
},
|
||||
"path": "",
|
||||
"baseName": "index",
|
||||
"rel": "alternate",
|
||||
"protocol": "",
|
||||
"isPlainText": false,
|
||||
"isHTML": false,
|
||||
"noUgly": true,
|
||||
"notAlternative": false
|
||||
}
|
||||
],
|
||||
"layouts": [
|
||||
|
|
Loading…
Reference in a new issue