main:
parent: extras
next: /extras/analytics
-prev: /taxonomies/ordering
+prev: /taxonomies/methods
title: Aliases
-weight: 10
---
For people migrating existing published content to Hugo, there's a good chance you need a mechanism to handle redirecting old URLs.
layouts folder of your site. In this case, the data passed to the template is
* Permalink - the link to the page being aliased
-* Page - the Page data for the page being aliased
\ No newline at end of file
+* Page - the Page data for the page being aliased
next: /extras/builders
prev: /extras/aliases
title: Analytics in Hugo
-weight: 15
---
Hugo ships with prebuilt internal templates for Google Analytics tracking, including both synchronous and asynchronous tracking codes.
next: /extras/comments
prev: /extras/analytics
title: Hugo Builders
-weight: 20
---
Hugo provides the functionality to quickly get a site, theme or page
next: /extras/crossreferences
prev: /extras/builders
title: Comments in Hugo
-weight: 30
---
As Hugo is a static site generator, the content produced is static and doesn’t interact with the users. The most common interaction people ask for is comment capability.
menu:
main:
parent: extras
-next: /extras/livereload
+next: /extras/robots-txt
prev: /extras/comments
title: Cross-References
toc: true
-weight: 40
---
Hugo makes it easy to link documents together with the `ref` and `relref` shortcodes. These shortcodes are also used to safely provide links to headings inside of your content, whether across documents or within a document. The only difference between `ref` and `relref` is whether the resulting URL is absolute (`http://1.com/about/`) or relative (`/about/`).
menu:
main:
parent: extras
-next: /extras/highlighting
+next: /extras/gitinfo
prev: /extras/datafiles
title: Data-driven Content
-weight: 91
toc: true
---
main:
parent: extras
next: /extras/datadrivencontent
-prev: /extras/scratch
+prev: /extras/robots-txt
title: Data Files
-weight: 90
---
In addition to the [built-in variables](/templates/variables/) available from Hugo, you can specify your own custom data that can be accessed via templates or shortcodes.
main:
parent: extras
next: /extras/toc
-prev: /extras/datadrivencontent
+prev: /extras/shortcodes
title: Syntax Highlighting
-weight: 90
toc: true
---
main:
parent: extras
next: /extras/menus
-prev: /extras/crossreferences
+prev: /extras/gitinfo
title: LiveReload
-weight: 50
---
Hugo may not be the first static site generator to utilize LiveReload
menu:
main:
parent: extras
-next: /community/mailing-list
+next: /extras/urls
notoc: true
-prev: /extras/urls
+prev: /extras/toc
title: Traversing Local Files
-weight: 110
---
## Traversing Local Files
menu:
main:
parent: extras
-next: /extras/permalinks
+next: /extras/pagination
prev: /extras/livereload
title: Menus
-weight: 60
---
Hugo has a simple yet powerful menu system that permits content to be
menu:
main:
parent: extras
-next: /extras/scratch
-prev: /extras/shortcodes
+next: /extras/permalinks
+prev: /extras/menus
title: Pagination
-weight: 80
---
Hugo supports pagination for the home page, sections and taxonomies. It's built to be easy use, but with loads of flexibility when needed. The real power shines when you combine it with [`where`](/templates/functions/), with its SQL-like operators, `first` and others --- you can even [order the content](/templates/list/) the way you've become used to with Hugo.
menu:
main:
parent: extras
-next: /extras/shortcodes
+next: /extras/scratch
notoc: true
-prev: /extras/menus
+prev: /extras/pagination
title: Permalinks
-weight: 70
---
By default, content is laid out into the target `publishdir` (public)
menu:
main:
parent: extras
-next: /community/mailing-list
-prev: /extras/urls
+next: /extras/datafiles
+prev: /extras/crossreferences
title: Custom robots.txt
-weight: 120
---
Hugo can generated a customized [robots.txt](http://www.robotstxt.org/) in the
menu:
main:
parent: extras
-next: /extras/datafiles
-prev: /extras/pagination
+next: /extras/shortcodes
+prev: /extras/permalinks
title: Scratch
-weight: 80
---
`Scratch` -- a "scratchpad" for your page-scoped variables. In most cases you can do well without `Scratch`, but there are some use cases that aren't solvable with Go's templates without `Scratch`'s help, due to scoping issues.
* `SetInMap` takes a `key`, `mapKey` and `value`
* `GetSortedMapValues` returns array of values from `key` sorted by `mapKey`
-`Set` and `SetInMap` can store values of any type.
+`Set` and `SetInMap` can store values of any type.
For single values, `Add` accepts values that support Go's `+` operator. If the first `Add` for a key is an array or slice, the following adds will be appended to that list.
menu:
main:
parent: extras
-next: /extras/pagination
-prev: /extras/permalinks
+next: /extras/highlighting
+prev: /extras/scratch
title: Shortcodes
-weight: 80
toc: false
---
menu:
main:
parent: extras
-next: /extras/urls
+next: /extras/localfiles
prev: /extras/highlighting
title: Table of Contents
-weight: 100
---
Hugo will automatically parse the Markdown for your content and create
menu:
main:
parent: extras
-next: /extras/robots-txt
+next: /community/mailing-list
notoc: true
-prev: /extras/toc
+prev: /extras/localfiles
title: URLs
-weight: 110
---
## Pretty URLs