summaryrefslogtreecommitdiffstats
path: root/docs/content/en/functions/math/Counter.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/content/en/functions/math/Counter.md')
-rw-r--r--docs/content/en/functions/math/Counter.md35
1 files changed, 35 insertions, 0 deletions
diff --git a/docs/content/en/functions/math/Counter.md b/docs/content/en/functions/math/Counter.md
new file mode 100644
index 000000000..7f53bdd0c
--- /dev/null
+++ b/docs/content/en/functions/math/Counter.md
@@ -0,0 +1,35 @@
+---
+title: math.Counter
+description: Increments and returns a global counter.
+categories: []
+keywords: []
+action:
+ aliases: []
+ related: []
+ returnType: uint64
+ signatures: [math.Counter]
+---
+
+The counter is global for both monolingual and multilingual sites, and its initial value for each build is 1.
+
+```go-html-template
+{{ warnf "single.html called %d times" math.Counter }}
+```
+
+```sh
+WARN single.html called 1 times
+WARN single.html called 2 times
+WARN single.html called 3 times
+```
+
+Use this function to:
+
+- Create unique warnings as shown above; the [`warnf`] function suppresses duplicate messages
+- Create unique target paths for the `resources.FromString` function where the target path is also the cache key
+
+[`warnf`]: /functions/fmt/warnf
+[`resources.FromString`]: /functions/resources/fromstring
+
+{{% note %}}
+Due to concurrency, the value returned in a given template for a given page will vary from one build to the next. You cannot use this function to assign a static id to each page.
+{{% /note %}}