diff --git a/exampleSite/content/home/tags.md b/exampleSite/content/home/tags.md index 4ad29fe5..56c048c0 100644 --- a/exampleSite/content/home/tags.md +++ b/exampleSite/content/home/tags.md @@ -7,4 +7,8 @@ weight = 120 # Order that this section will appear. title = "Popular Topics" subtitle = "" + +[content] + # Choose how many tags you would like to display (0 = all tags) + count = 20 +++ diff --git a/layouts/partials/widgets/tag_cloud.html b/layouts/partials/widgets/tag_cloud.html index 6bf26106..af8b82ce 100644 --- a/layouts/partials/widgets/tag_cloud.html +++ b/layouts/partials/widgets/tag_cloud.html @@ -1,26 +1,34 @@ {{ $ := .root }} -{{ $page := .page }} +{{ $st := .page }} + +{{ $items_count := $st.Params.content.count }} +{{ if eq $items_count 0 }} + {{ $items_count = 65535 }} +{{ else }} + {{ $items_count = $items_count | default 20 }} +{{ end }}
-

{{ with $page.Title }}{{ . | markdownify | emojify }}{{ end }}

- {{ with $page.Params.subtitle }}

{{ . | markdownify | emojify }}

{{ end }} +

{{ with $st.Title }}{{ . | markdownify | emojify }}{{ end }}

+ {{ with $st.Params.subtitle }}

{{ . | markdownify | emojify }}

{{ end }}
- {{ with $page.Content }}{{ . }}{{ end }} + {{ with $st.Content }}{{ . }}{{ end }} {{ if not (eq (len site.Taxonomies.tags) 0) }} + {{ $tags := first $items_count site.Taxonomies.tags.ByCount }} {{ $fontSmall := 0.8 }} {{ $fontBig := 2.5 }} {{ $fontDelta := sub $fontBig $fontSmall }} - {{ $min := len (index site.Taxonomies.tags.ByCount.Reverse 0).Pages }} - {{ $max := add (len (index site.Taxonomies.tags.ByCount 0).Pages) 1 }} + {{ $min := len (index ($tags).Reverse 0).Pages }} + {{ $max := add (len (index $tags 0).Pages) 1 }} {{ $delta := sub $max $min }} {{ $fontStep := div $fontDelta $delta }}
- {{ range $name, $taxonomy := site.Taxonomies.tags }} + {{ range $name, $taxonomy := $tags }} {{ $tagCount := len $taxonomy.Pages }} {{ $weight := div (sub (math.Log $tagCount) (math.Log $min)) (sub (math.Log $max) (math.Log $min)) }} {{ $fontSize := add $fontSmall (mul (sub $fontBig $fontSmall) $weight) }}