update breadcrumb, lang-switcher
This commit is contained in:
26
layouts/partials/components/breadcrumb.html
Normal file
26
layouts/partials/components/breadcrumb.html
Normal file
@@ -0,0 +1,26 @@
|
||||
{{ $url := replace .Permalink ( printf "%s" .Site.BaseURL) "" }}
|
||||
{{ $lang := .Lang | urlize }}
|
||||
{{ $.Scratch.Add "path" .Site.BaseURL }}
|
||||
<ul class="breadcrumb mt-6 inline-flex">
|
||||
<li class="mx-1 capitalize">
|
||||
<a class="text-primary dark:text-darkmode-primary" href="/">Home</a>
|
||||
</li>
|
||||
{{ range $index, $element := split $url "/" }}
|
||||
{{ if ne $element $lang }}
|
||||
{{ $.Scratch.Add "path" $element }}
|
||||
{{ else }}
|
||||
{{ $.Scratch.Add "path" (add $element "/") }}
|
||||
{{ end }}
|
||||
{{ if and (ne $element "") (ne $element $lang) }}
|
||||
<li class="text-light dark:text-darkmode-light mx-1 capitalize">
|
||||
<span class="inlin-block mr-1">/</span>
|
||||
<a
|
||||
class="text-primary dark:text-darkmode-primary"
|
||||
href="{{ $.Scratch.Get `path` }}"
|
||||
>{{ . }}
|
||||
</a>
|
||||
</li>
|
||||
{{ $.Scratch.Add "path" "/" }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</ul>
|
@@ -1,18 +1,25 @@
|
||||
<!-- Language List -->
|
||||
{{ $class := .Class }}
|
||||
{{ $context := .Context }}
|
||||
{{ $siteLanguages := site.Home.AllTranslations }}
|
||||
{{ $pageLang := $context.Lang }}
|
||||
{{ $pageLink := replace $context.RelPermalink $pageLang "" }}
|
||||
{{ $pageLink = replace $pageLink "//" "/" }}
|
||||
|
||||
{{ if $context.IsTranslated }}
|
||||
<select class="{{ $class }}" onchange="location = this.value">
|
||||
{{ $siteLanguages := site.Home.AllTranslations }}
|
||||
{{ $pageLang := $context.Lang }}
|
||||
{{ range $siteLanguages }}
|
||||
{{ if eq (string $pageLang) (string .Language) }}
|
||||
<option id="{{ .Language }}" value="{{ .RelPermalink }}" selected>
|
||||
<option
|
||||
id="{{ .Language }}"
|
||||
value="{{ replace (add .RelPermalink $pageLink) `//` `/` }}"
|
||||
selected>
|
||||
{{ .Language.LanguageName }}
|
||||
</option>
|
||||
{{ else }}
|
||||
<option id="{{ .Language }}" value="{{ .RelPermalink }}">
|
||||
<option
|
||||
id="{{ .Language }}"
|
||||
value="{{ replace (add .RelPermalink $pageLink) `//` `/` }}">
|
||||
{{ .Language.LanguageName }}
|
||||
</option>
|
||||
{{ end }}
|
||||
|
@@ -3,27 +3,7 @@
|
||||
<div
|
||||
class="from-body to-theme-light dark:from-darkmode-body dark:to-darkmode-theme-light rounded-2xl bg-gradient-to-b px-8 py-14">
|
||||
<h1>{{ .Title | title }}</h1>
|
||||
{{ $url := replace .Permalink ( printf "%s" .Site.BaseURL) "" }}
|
||||
{{ $.Scratch.Add "path" .Site.BaseURL }}
|
||||
<ul class="breadcrumb mt-6 inline-flex">
|
||||
<li class="mx-1 capitalize">
|
||||
<a class="text-primary dark:text-darkmode-primary" href="/">Home</a>
|
||||
</li>
|
||||
{{ range $index, $element := split $url "/" }}
|
||||
{{ $.Scratch.Add "path" $element }}
|
||||
{{ if ne $element "" }}
|
||||
<li class="text-light dark:text-darkmode-light mx-1 capitalize">
|
||||
<span class="inlin-block mr-1">/</span>
|
||||
<a
|
||||
class="text-primary dark:text-darkmode-primary"
|
||||
href="{{ $.Scratch.Get `path` }}"
|
||||
>{{ . }}</a
|
||||
>
|
||||
</li>
|
||||
{{ $.Scratch.Add "path" "/" }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ partial "components/breadcrumb" . }}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
Reference in New Issue
Block a user