diff options
author | spf13 <steve.francia@gmail.com> | 2013-10-25 18:37:53 -0400 |
---|---|---|
committer | spf13 <steve.francia@gmail.com> | 2013-10-25 18:37:53 -0400 |
commit | 9388f236062c97e44b3964e4097e7bf34658d8b8 (patch) | |
tree | feb5749fc3705746ad1ab06f33a7eb60fd9460f8 | |
parent | b580a25d1f9308d71aa20673cd3e271711943846 (diff) |
Adding support for linkTitles
-rw-r--r-- | docs/content/layout/variables.md | 4 | ||||
-rw-r--r-- | hugolib/page.go | 11 |
2 files changed, 14 insertions, 1 deletions
diff --git a/docs/content/layout/variables.md b/docs/content/layout/variables.md index 226ebb3a3..bbbe251f1 100644 --- a/docs/content/layout/variables.md +++ b/docs/content/layout/variables.md @@ -15,6 +15,8 @@ are available in the context for the templates. **.Date** The date the content is published on.<br> **.Indexes** These will use the field name of the plural form of the index (see tags and categories above)<br> **.Permalink** The Permanent link for this page.<br> +**.RelPermalink** The Relative permanent link for this page.<br> +**.LinkTitle** Access when creating links to this content. Will use linktitle if set in front-matter, else title<br> **.FuzzyWordCount** The approximate number of words in the content.<br> **.RSSLink** Link to the indexes' rss link <br> **.Prev** Pointer to the previous content (based on pub date)<br> @@ -46,7 +48,7 @@ includes indexes, lists and the homepage. Also available is `.Site` which has the following: **.Site.BaseUrl** The base URL for the site as defined in the config.json file.<br> -**.Site.Indexes** The names of the indexes of the site.<br> +**.Site.Indexes** The indexes for the entire site.<br> **.Site.LastChange** The date of the last change of the most recent content.<br> **.Site.Recent** Array of all content ordered by Date, newest first<br> diff --git a/hugolib/page.go b/hugolib/page.go index b8a2d45b7..ae0a630af 100644 --- a/hugolib/page.go +++ b/hugolib/page.go @@ -47,6 +47,7 @@ type Page struct { Markup string renderable bool layout string + linkTitle string PageMeta File Position @@ -276,6 +277,14 @@ func (p *Page) permalink() (*url.URL, error) { return MakePermalink(base, path), nil } +func (p *Page) LinkTitle() string { + if len(p.linkTitle) > 0 { + return p.linkTitle + } else { + return p.Title + } +} + func (p *Page) Permalink() (string, error) { link, err := p.permalink() if err != nil { @@ -334,6 +343,8 @@ func (page *Page) update(f interface{}) error { switch loki { case "title": page.Title = interfaceToString(v) + case "linktitle": + page.linkTitle = interfaceToString(v) case "description": page.Description = interfaceToString(v) case "slug": |