mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-14 20:37:55 -05:00
41bc6f702a
2c0125b52 Remove .Site.Author 2cf8841b3 Update partialCached.md (#1924) 385487191 Update data-templates.md (#1926) ce207e141 Remove redundant markdown and fix a few typos (#1936) 3687c2953 Make heading id linkable, take 2 45c79bea7 Make heading id linkable b22079344 Delete duplicates the lines 557-569 and 570-582. (#1934) 0a90dc122 Rework the taxonomy variables page (#1935) 7f8979c50 Update theme 26e682a3a Update multilingual.md d40e7693f Update postcss.md 375d75c01 Update postcss npm instructions (#1931) 63020094a Emphasize Window shell selection (#1930) 56824be2c Update configuration.md b7b8f16b3 Docu 'Theme components': minor fix (#1929) 09dc81a05 Remove Docker from BSD page (#1927) 205fea204 netlify: Hugo 0.108.0 6abe49c28 Merge commit 'da670c38ee63a7fef25e2b9f42519232055b60dc' 12b59a4c5 docs: Add basic doc for wrapStandAloneImageWithinParagraph etc. ba07bd970 dartsass: Add sourceMapIncludeSources option git-subtree-dir: docs git-subtree-split: 2c0125b5290494d49334606c451446ebd9df3c21
62 lines
2.3 KiB
Markdown
62 lines
2.3 KiB
Markdown
---
|
|
title: time
|
|
linktitle:
|
|
description: Converts a timestamp string into a `time.Time` structure.
|
|
date: 2017-02-01
|
|
publishdate: 2017-02-01
|
|
lastmod: 2017-02-01
|
|
categories: [functions]
|
|
menu:
|
|
docs:
|
|
parent: "functions"
|
|
keywords: [dates,time,location]
|
|
signature: ["time INPUT [TIMEZONE]"]
|
|
workson: []
|
|
hugoversion: "v0.77.0"
|
|
relatedfuncs: []
|
|
deprecated: false
|
|
aliases: []
|
|
---
|
|
|
|
|
|
`time` converts a timestamp string with an optional default location into a [`time.Time`](https://godoc.org/time#Time) structure so you can access its fields:
|
|
|
|
```
|
|
{{ time "2016-05-28" }} → "2016-05-28T00:00:00Z"
|
|
{{ (time "2016-05-28").YearDay }} → 149
|
|
{{ mul 1000 (time "2016-05-28T10:30:00.00+10:00").Unix }} → 1464395400000, or Unix time in milliseconds
|
|
```
|
|
|
|
## Using Locations
|
|
|
|
The optional `TIMEZONE` parameter is a string that sets a default time zone (or more specific, the location, which represents the collection of time offsets in a geographical area) that is associated with the specified time value. If the time value has an explicit timezone or offset specified, it will take precedence over the `TIMEZONE` parameter.
|
|
|
|
The list of valid locations may be system dependent, but should include `UTC`, `Local`, or any location in the [IANA Time Zone database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
|
|
|
|
If no `TIMEZONE` is set, the `timeZone` from site configuration will be used.
|
|
|
|
```
|
|
{{ time "2020-10-20" }} → 2020-10-20 00:00:00 +0000 UTC
|
|
{{ time "2020-10-20" "America/Los_Angeles" }} → 2020-10-20 00:00:00 -0700 PDT
|
|
{{ time "2020-01-20" "America/Los_Angeles" }} → 2020-01-20 00:00:00 -0800 PST
|
|
```
|
|
|
|
## Example: Using `time` to get Month Index
|
|
|
|
The following example takes a UNIX timestamp---set as `utimestamp: "1489276800"` in a content's front matter---converts the timestamp (string) to an integer using the [`int` function][int], and then uses [`printf`] to convert the `Month` property of `time` into an index.
|
|
|
|
The following example may be useful when setting up [multilingual sites][multilingual]:
|
|
|
|
{{< code file="unix-to-month-integer.html" >}}
|
|
{{$time := time (int .Params.addDate)}}
|
|
=> $time = 1489276800
|
|
{{$time.Month}}
|
|
=> "March"
|
|
{{$monthindex := printf "%d" $time.Month }}
|
|
=> $monthindex = 3
|
|
{{< /code >}}
|
|
|
|
|
|
[int]: /functions/int/
|
|
[multilingual]: /content-management/multilingual/
|
|
[`printf`]: /functions/printf/
|