ref: 1352bc880df4cd25eff65843973fcc0dd21b6304
parent: d184e5059c72c15df055192b01da0fd8c5b0fc5c
author: Joshua Wong <joshwonghc@gmail.com>
date: Tue Feb 25 19:58:07 EST 2020
Add hugo.IsProduction function Fixes #6873
--- a/common/hugo/hugo.go
+++ b/common/hugo/hugo.go
@@ -54,6 +54,10 @@
return template.HTML(fmt.Sprintf(`<meta name="generator" content="Hugo %s" />`, CurrentVersion.String()))
}
+func (i Info) IsProduction() bool {
+ return i.Environment == EnvironmentProduction
+}
+
// NewInfo creates a new Hugo Info object.
func NewInfo(environment string) Info {
if environment == "" {
--- a/common/hugo/hugo_test.go
+++ b/common/hugo/hugo_test.go
@@ -31,5 +31,9 @@
c.Assert(hugoInfo.BuildDate, qt.Equals, buildDate)
c.Assert(hugoInfo.Environment, qt.Equals, "production")
c.Assert(string(hugoInfo.Generator()), qt.Contains, fmt.Sprintf("Hugo %s", hugoInfo.Version()))
+ c.Assert(hugoInfo.IsProduction(), qt.Equals, true)
+
+ devHugoInfo := NewInfo("development")
+ c.Assert(devHugoInfo.IsProduction(), qt.Equals, false)
}
--- a/docs/content/en/functions/hugo.md
+++ b/docs/content/en/functions/hugo.md
@@ -33,7 +33,7 @@
`hugo` returns an instance that contains the following functions:
hugo.Environment
-: the current running environment as defined through the `--environment` cli tag.
+: the current running environment as defined through the `--environment` cli tag
hugo.CommitHash
: the git commit hash of the current Hugo binary e.g. `0e8bed9ccffba0df554728b46c5bbf6d78ae5247`
@@ -41,7 +41,8 @@
hugo.BuildDate
: the compile date of the current Hugo binary formatted with RFC 3339 e.g. `2002-10-02T10:00:00-05:00`
-
+hugo.IsProduction
+: returns true if `hugo.Environment` is set to the production environment
{{% note "Use the Hugo Generator Tag" %}}
We highly recommend using `hugo.Generator` in your website's `<head>`. `hugo.Generator` is included by default in all themes hosted on [themes.gohugo.io](https://themes.gohugo.io). The generator tag allows the Hugo team to track the usage and popularity of Hugo.