github.com/mweagle/Sparta@v1.15.0/docs_source/themes/hugo-theme-learn/layouts/shortcodes/children.html (about) 1 {{ $_hugo_config := `{ "version": 1 }` }} 2 {{ $showhidden := .Get "showhidden"}} 3 {{ $style := .Get "style" | default "li" }} 4 {{ $depth := .Get "depth" | default 1 }} 5 {{ $withDescription := .Get "description" | default false }} 6 {{ $sortTerm := .Get "sort" | default "Weight" }} 7 8 <ul class="children children-{{$style}}"> 9 {{ .Scratch.Set "pages" .Page.Pages }} 10 11 {{if .Page.IsHome}} 12 <!-- Add pages that are in root dir --> 13 {{ $rootPage := where .Page.Pages "Dir" "" }} 14 {{ .Scratch.Set "pages" (.Page.Sections | union $rootPage)}} 15 {{else}} 16 {{ if .Page.Sections}} 17 {{ .Scratch.Set "pages" (.Page.Pages | union .Page.Sections) }} 18 {{end}} 19 {{end}} 20 21 {{ $pages := (.Scratch.Get "pages") }} 22 23 {{if eq $sortTerm "Weight"}} 24 {{template "childs" dict "menu" $pages.ByWeight "style" $style "showhidden" $showhidden "count" 1 "depth" $depth "pages" .Site.Pages "description" $withDescription "sortTerm" $sortTerm}} 25 {{else if eq $sortTerm "Name"}} 26 {{template "childs" dict "menu" $pages.ByTitle "style" $style "showhidden" $showhidden "count" 1 "depth" $depth "pages" .Site.Pages "description" $withDescription "sortTerm" $sortTerm}} 27 {{else if eq $sortTerm "PublishDate"}} 28 {{template "childs" dict "menu" $pages.ByPublishDate "style" $style "showhidden" $showhidden "count" 1 "depth" $depth "pages" .Site.Pages "description" $withDescription "sortTerm" $sortTerm}} 29 {{else if eq $sortTerm "Date"}} 30 {{template "childs" dict "menu" $pages.ByDate "style" $style "showhidden" $showhidden "count" 1 "depth" $depth "pages" .Site.Pages "description" $withDescription "sortTerm" $sortTerm}} 31 {{else if eq $sortTerm "Length"}} 32 {{template "childs" dict "menu" $pages.ByLength "style" $style "showhidden" $showhidden "count" 1 "depth" $depth "pages" .Site.Pages "description" $withDescription "sortTerm" $sortTerm}} 33 {{else}} 34 {{template "childs" dict "menu" $pages "style" $style "showhidden" $showhidden "count" 1 "depth" $depth "pages" .Site.Pages "description" $withDescription "sortTerm" $sortTerm}} 35 {{end}} 36 </ul> 37 38 {{.Inner|safeHTML}} 39 40 {{ define "childs" }} 41 {{ range .menu }} 42 {{ if and .Params.hidden (not $.showhidden) }} 43 {{else}} 44 {{if not .IsHome}} 45 {{if hasPrefix $.style "h"}} 46 {{$num := sub ( int (trim $.style "h") ) 1 }} 47 {{$numn := add $num $.count }} 48 49 {{(printf "<h%d>" $numn)|safeHTML}} 50 <a href="{{.RelPermalink}}" >{{ .Title }}</a> 51 {{(printf "</h%d>" $numn)|safeHTML}} 52 53 {{else}} 54 {{(printf "<%s>" $.style)|safeHTML}} 55 <a href="{{.RelPermalink}}" >{{ .Title }}</a> 56 {{(printf "</%s>" $.style)|safeHTML}} 57 {{end}} 58 59 {{if $.description}} 60 {{if .Description}} 61 <p>{{.Description}}</p> 62 {{else}} 63 <p>{{.Summary}}</p> 64 {{end}} 65 {{end}} 66 {{end}} 67 {{ if lt $.count $.depth}} 68 69 {{if eq $.style "li"}} 70 <ul> 71 {{end}} 72 73 {{ if .Sections}} 74 {{ .Scratch.Set "pages" (.Pages | union .Sections) }} 75 {{else}} 76 {{ .Scratch.Set "pages" .Pages }} 77 {{end}} 78 79 {{ $pages := (.Scratch.Get "pages") }} 80 81 {{if eq $.sortTerm "Weight"}} 82 {{template "childs" dict "menu" $pages.ByWeight "style" $.style "showhidden" $.showhidden "count" (add $.count 1) "depth" $.depth "pages" $.pages "description" $.description "sortTerm" $.sortTerm}} 83 {{else if eq $.sortTerm "Name"}} 84 {{template "childs" dict "menu" $pages.ByTitle "style" $.style "showhidden" $.showhidden "count" (add $.count 1) "depth" $.depth "pages" $.pages "description" $.description "sortTerm" $.sortTerm}} 85 {{else if eq $.sortTerm "PublishDate"}} 86 {{template "childs" dict "menu" $pages.ByPublishDate "style" $.style "showhidden" $.showhidden "count" (add $.count 1) "depth" $.depth "pages" $.pages "description" $.description "sortTerm" $.sortTerm}} 87 {{else if eq $.sortTerm "Date"}} 88 {{template "childs" dict "menu" $pages.ByDate "style" $.style "showhidden" $.showhidden "count" (add $.count 1) "depth" $.depth "pages" $.pages "description" $.description "sortTerm" $.sortTerm}} 89 {{else if eq $.sortTerm "Length"}} 90 {{template "childs" dict "menu" $pages.ByLength "style" $.style "showhidden" $.showhidden "count" (add $.count 1) "depth" $.depth "pages" $.pages "description" $.description "sortTerm" $.sortTerm}} 91 {{else}} 92 {{template "childs" dict "menu" $pages "style" $.style "showhidden" $.showhidden "count" (add $.count 1) "depth" $.depth "pages" $.pages "description" $.description "sortTerm" $.sortTerm}} 93 {{end}} 94 95 {{if eq $.style "li"}} 96 </ul> 97 {{end}} 98 {{end}} 99 {{end}} 100 {{end}} 101 {{end}}