hugo/docs/content/en/functions/adddate.md

1.8 KiB

title description godocref date publishdate lastmod categories menu keywords signature workson hugoversion relatedfuncs deprecated aliases
.AddDate Returns the time corresponding to adding the given number of years, months, and days passed to the function. https://golang.org/pkg/time/#Time.AddDate 2017-02-01 2017-02-01 2017-02-01
functions
docs
parent
functions
dates
time
.AddDate YEARS MONTHS DAYS
times
now
false

The AddDate function takes three arguments in logical order of years, months, and days.

Example: Randomized Tweets from the Last 2 Years

Let's assume you have a file at data/tweets.toml that contains a list of Tweets to display on your site's homepage. The file is filled with [[tweet]] blocks; e.g.---

{{< code-toggle file="data/tweets" >}} tweet name = "Steve Francia" twitter_handle = "@spf13" quote = "I'm creator of Hugo. #metadocreference" link = "https://twitter.com/spf13" date = "2017-01-07T00:00:00Z" {{< /code-toggle >}}

Let's assume you want to grab Tweets from the last two years and present them in a random order. In conjunction with the where and now functions, you can limit our range to the last two years via now.AddDate -2 0 0, which represents a point in time 2 years, 0 months, and 0 days before the time of your last site build.

{{< code file="partials/templates/random-tweets.html" download="tweets.html" >}} {{ range where $.Site.Data.tweets.tweet "date" "ge" (now.AddDate -2 0 0) | shuffle }}

{{ .quote | safeHTML }}

— {{ .name }} ({{ .twitter_handle }}) {{ dateFormat "January 2, 2006" .date }}
{{ end }} {{< /code >}}