init
This commit is contained in:
55
themes/editor-hugo/layouts/partials/footer.html
Normal file
55
themes/editor-hugo/layouts/partials/footer.html
Normal file
@@ -0,0 +1,55 @@
|
||||
<footer class="bg-primary-light py-5">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
{{ with site.Params.social }}
|
||||
<div class="col-12 text-center mb-5">
|
||||
<ul class="social-links is-circled list-unstyled list-inline font-weight-500">
|
||||
{{ range . }}
|
||||
<li class="list-inline-item"><a href="{{.link}}" title="{{.title}}">
|
||||
<i class="icon {{.icon}}"></i> {{.title}}
|
||||
</a></li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
|
||||
|
||||
<p>Discover the best Odoo Community Hosting Tips, Tutorials & Best Practices to optimize your Odoo experience. Whether you're a beginner or an advanced user, our blog provides expert guidance on setting up and managing your Odoo instance. Learn essential tips for choosing the right hosting environment, improving system performance, and ensuring seamless updates.</p>
|
||||
|
||||
<p>Our tutorials cover everything from basic configurations to advanced customization, helping you make the most of Odoo’s powerful features. Stay up-to-date with the latest Odoo Community trends and implement best practices for security, scalability, and data integrity.</p>
|
||||
|
||||
<p>With our practical insights, you can enhance your Odoo hosting setup, troubleshoot common issues, and take your business to the next level. Whether you're hosting Odoo on-premise or in the cloud, our resources will guide you every step of the way. Dive into the world of Odoo and unlock its full potential today!</p>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
|
||||
{{ if not .IsHome }}
|
||||
{{ if site.Params.subscription.enable }}
|
||||
{{ with site.Params.subscription }}
|
||||
<!-- subscription form -->
|
||||
<form class="newsletter-block mx-auto mb-5" action="{{ .mailchimp_form_action }}" method="post" name="mc-embedded-subscribe-form" target="_blank">
|
||||
<h5 class="h4 mb-3 text-center font-primary">{{ i18n `subscribe_title` }}</h5>
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-transparent pl-3" placeholder="{{ i18n `enter_your_email`}}" aria-label="{{ i18n `enter_your_email`}}" required>
|
||||
<div class="input-group-append">
|
||||
<button type="submit" class="input-group-text pr-3" aria-label="News-letter"><i class="far fa-paper-plane"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div style="position: absolute; left: -5000px;" aria-hidden="true">
|
||||
<input type="text" name="{{ .mailchimp_form_name }}" tabindex="-1">
|
||||
</div>
|
||||
</form>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
<div class="col-12 text-center">
|
||||
<p class="mb-0 font-weight-500">{{site.Params.copyright | markdownify}}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
31
themes/editor-hugo/layouts/partials/head.html
Normal file
31
themes/editor-hugo/layouts/partials/head.html
Normal file
@@ -0,0 +1,31 @@
|
||||
<meta charset="utf-8">
|
||||
<title>{{ .Title }}</title>
|
||||
|
||||
<!-- mobile responsive meta -->
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5">
|
||||
<meta name="description" content="{{ with .Params.Description }}{{ . }}{{ else }}{{ with site.Params.description }}{{ . }}{{ end }}{{ end }}">
|
||||
{{ with site.Params.author }}
|
||||
<meta name="author" content="{{ . }}">{{ end }}
|
||||
|
||||
<meta name="theme-name" content="editor-hugo" />
|
||||
|
||||
<!--Favicon-->
|
||||
<link rel="shortcut icon" href="{{ site.Params.favicon | absURL }}" type="image/x-icon">
|
||||
<link rel="icon" href="{{ site.Params.favicon | absURL }}" type="image/x-icon">
|
||||
|
||||
<!-- multilingual SEO optimizations -->
|
||||
{{ if .IsTranslated }}
|
||||
{{ range .Page.AllTranslations }}
|
||||
<link rel="alternate" title="{{.Title}}" hreflang="{{.Lang}}" href="{{.RelPermalink}}">
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ with .Params.image }}
|
||||
<meta property="og:image" content="{{ . | absURL }}" />
|
||||
{{ end }}
|
||||
{{ template "_internal/opengraph.html" . }}
|
||||
{{ template "_internal/google_analytics.html" . }}
|
||||
{{ site.Params.custom_script | safeHTML }}
|
||||
|
||||
|
||||
<script defer data-domain="blog.odoo4projects.com" src="https://plausible.odoo4projects.com/js/script.js"></script>
|
||||
137
themes/editor-hugo/layouts/partials/header.html
Normal file
137
themes/editor-hugo/layouts/partials/header.html
Normal file
@@ -0,0 +1,137 @@
|
||||
<header class="sidenav">
|
||||
<div class="is-top">
|
||||
<div>
|
||||
<!-- Language List -->
|
||||
{{ if .IsTranslated }}
|
||||
<span class="d-inline-block d-md-none mr-1"><select style="cursor:pointer;background:transparent" class="m-2 border-0 text-uppercase" id="select-language" onchange="location = this.value;">
|
||||
{{ $siteLanguages := site.Languages}}
|
||||
{{ $pageLang := .Page.Lang}}
|
||||
{{ range .Page.AllTranslations }}
|
||||
{{ $translation := .}}
|
||||
{{ range $siteLanguages }}
|
||||
{{ if eq $translation.Lang .Lang }}
|
||||
{{ $selected := false }}
|
||||
{{ if eq $pageLang .Lang}}
|
||||
<option id="{{ $translation.Language }}" value="{{ $translation.Permalink }}" selected>{{ .LanguageName }}
|
||||
</option>
|
||||
{{ else }}
|
||||
<option id="{{ $translation.Language }}" value="{{ $translation.Permalink }}">{{ .LanguageName }}</option>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</select></span>
|
||||
{{ end }}
|
||||
|
||||
{{ if site.Params.search }}
|
||||
<button class="search-toggle d-inline-block d-md-none" data-toggle="search">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" viewBox="0 0 16 16"><path d="M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z"/></svg>
|
||||
</button>
|
||||
{{ end }}
|
||||
<button class="sidenav-toggler d-inline-block {{if eq site.Params.logo_rotate false}}logo-plain{{end}}" data-toggle="sidenav-menu">
|
||||
<svg id="toggler-icon" class="toggler-icon" viewBox="0 0 100 100" width="60" onclick="this.classList.toggle('active')"><path class="line top" d="m 30,33 h 40 c 0,0 9.044436,-0.654587 9.044436,-8.508902 0,-7.854315 -8.024349,-11.958003 -14.89975,-10.85914 -6.875401,1.098863 -13.637059,4.171617 -13.637059,16.368042 v 40" /><path class="line middle" d="m 30,50 h 40" /><path class="line bottom" d="m 30,67 h 40 c 12.796276,0 15.357889,-11.717785 15.357889,-26.851538 0,-15.133752 -4.786586,-27.274118 -16.667516,-27.274118 -11.88093,0 -18.499247,6.994427 -18.435284,17.125656 l 0.252538,40" /></svg>
|
||||
</button>
|
||||
</div>
|
||||
{{ if site.Params.logo_rotate }}
|
||||
<a class="navbar-brand mr-0" href="https://ODOO4projects.com">
|
||||
{{ if site.Params.logo }}
|
||||
<img height="{{site.Params.logo_height}}" src="{{ site.Params.logo | absURL}}"
|
||||
alt="{{site.Params.logo_text}}">
|
||||
{{ else }}
|
||||
<span class="h3">{{site.Params.logo_text | markdownify}} <span class="text-primary">.</span></span>
|
||||
{{ end }}
|
||||
</a>
|
||||
{{ else }}
|
||||
<a class="navbar-brand plain mr-0" href="{{ site.BaseURL | relLangURL }}">
|
||||
{{ if site.Params.logo }}
|
||||
<img height="{{site.Params.logo_height}}" src="{{ site.Params.logo | absURL}}"
|
||||
alt="{{site.Params.logo_text}}">
|
||||
{{ else }}
|
||||
<span class="h3">{{site.Params.logo_text | markdownify}} <span class="text-primary">.</span></span>
|
||||
{{ end }}
|
||||
</a>
|
||||
{{ end }}
|
||||
|
||||
</div>
|
||||
<div class="d-none d-md-block">
|
||||
<ul class="social-links list-unstyled">
|
||||
{{ if site.Params.search }}
|
||||
<li class="mb-3">
|
||||
<button class="search-toggle" data-toggle="search">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" viewBox="0 0 16 16"><path d="M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z"/></svg>
|
||||
</button>
|
||||
</li>
|
||||
{{ end }}
|
||||
<li>
|
||||
<a href="mailto:{{ site.Params.email }}">
|
||||
<svg width="1.15em" height="1.15em" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V4zm2-1a1 1 0 0 0-1 1v.217l7 4.2 7-4.2V4a1 1 0 0 0-1-1H2zm13 2.383l-4.758 2.855L15 11.114v-5.73zm-.034 6.878L9.271 8.82 8 9.583 6.728 8.82l-5.694 3.44A1 1 0 0 0 2 13h12a1 1 0 0 0 .966-.739zM1 11.114l4.758-2.876L1 5.383v5.73z"/></svg>
|
||||
</a>
|
||||
</li>
|
||||
<!-- Language List -->
|
||||
{{ if .IsTranslated }}
|
||||
<li class="mt-3 pt-2"><select style="cursor:pointer" class="m-2 border-0 text-uppercase" id="select-language" onchange="location = this.value;">
|
||||
{{ $siteLanguages := site.Languages}}
|
||||
{{ $pageLang := .Page.Lang}}
|
||||
{{ range .Page.AllTranslations }}
|
||||
{{ $translation := .}}
|
||||
{{ range $siteLanguages }}
|
||||
{{ if eq $translation.Lang .Lang }}
|
||||
{{ $selected := false }}
|
||||
{{ if eq $pageLang .Lang}}
|
||||
<option id="{{ $translation.Language }}" value="{{ $translation.Permalink }}" selected>{{ .LanguageName }}
|
||||
</option>
|
||||
{{ else }}
|
||||
<option id="{{ $translation.Language }}" value="{{ $translation.Permalink }}">{{ .LanguageName }}</option>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</select></li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<div class="sidenav-overlay" data-toggle="sidenav-menu" onclick="document.getElementById('toggler-icon').classList.remove('active')"></div>
|
||||
|
||||
<nav class="sidenav-menu flex-column justify-content-between">
|
||||
<ul class="w-100 accordion" id="accordionMenu">
|
||||
{{ range site.Menus.main }}
|
||||
{{ if .HasChildren }}
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="#" type="button" data-toggle="collapse" data-target="#dropdown-menu-02">{{ .Name }}</a>
|
||||
<ul id="dropdown-menu-02" class="collapse list-unstyled" data-parent="#accordionMenu">
|
||||
{{ range .Children }}
|
||||
<li><a href="{{if .Pre}}{{if not $.IsHome}}{{site.BaseURL | relLangURL}}{{end}}{{.Pre}}{{ .URL }}{{else}}{{.URL | relLangURL}}{{end}}">{{ .Name }}</a></li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
</li>
|
||||
{{ else }}
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{if .Pre}}{{if not $.IsHome}}{{site.BaseURL | relLangURL}}{{end}}{{.Pre}}{{ .URL }}{{else}}{{.URL | relLangURL}}{{end}}">{{ .Name }}</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</ul>
|
||||
|
||||
{{ with site.Params.social }}
|
||||
<ul class="social-links list-unstyled list-inline mt-5">
|
||||
{{ range . }}
|
||||
<li class="list-inline-item"><a href="{{.link}}" title="{{.title}}">
|
||||
<i class="{{.icon}}"></i>
|
||||
</a></li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ end }}
|
||||
</nav>
|
||||
|
||||
{{ if site.Params.search }}
|
||||
<div class="search-block">
|
||||
<div data-toggle="search-close">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" fill="currentColor" class="text-primary" viewBox="0 0 16 16"><path d="M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z"/></svg>
|
||||
</div>
|
||||
<form action="{{ `search`| relLangURL }}" method="GET">
|
||||
<input id="search-field" name="s" type="search" placeholder="{{ i18n `search_placeholder`}}" class="text-center" aria-label="search-query">
|
||||
</form>
|
||||
</div>
|
||||
{{ end }}
|
||||
19
themes/editor-hugo/layouts/partials/page-header.html
Normal file
19
themes/editor-hugo/layouts/partials/page-header.html
Normal file
@@ -0,0 +1,19 @@
|
||||
<section class="col-12 page-header">
|
||||
<div class="section my-4 py-5">
|
||||
|
||||
{{ if or (eq .Section "tags") (eq .Section "categories") }}
|
||||
|
||||
{{ if eq .Section "tags" }}
|
||||
<h2 class="h4 title">{{ i18n "showing_posts_from" }} <mark>{{.Title | markdownify}}</mark> {{ i18n "tag" }}</h2>
|
||||
|
||||
{{ else if eq .Section "categories" }}
|
||||
|
||||
<h2 class="h4 title">{{ i18n "showing_posts_from" }} <mark>{{.Title | markdownify}}</mark> {{ i18n "category" }}</h2>
|
||||
{{ end }}
|
||||
|
||||
{{ else }}
|
||||
<h2 class="h4 title">{{.Title | markdownify}}</h2>
|
||||
{{ end }}
|
||||
|
||||
</div>
|
||||
</section>
|
||||
7
themes/editor-hugo/layouts/partials/preloader.html
Normal file
7
themes/editor-hugo/layouts/partials/preloader.html
Normal file
@@ -0,0 +1,7 @@
|
||||
{{ if site.Params.preloader.enable }}
|
||||
<div class="preloader">
|
||||
{{ with site.Params.preloader.preloader }}
|
||||
<img src="{{ . | absURL }}" alt="preloader">
|
||||
{{ end }}
|
||||
</div>
|
||||
{{ end }}
|
||||
72
themes/editor-hugo/layouts/partials/script.html
Normal file
72
themes/editor-hugo/layouts/partials/script.html
Normal file
@@ -0,0 +1,72 @@
|
||||
<!-- font family -->
|
||||
<script src="https://cdn.jsdelivr.net/gh/theprojectsomething/webfontloader@feature/google-fonts-v2/webfontloader.js"></script>
|
||||
{{$pf:= site.Params.variables.primary_font}}
|
||||
{{$sf:= site.Params.variables.secondary_font}}
|
||||
<script>
|
||||
WebFont.load({
|
||||
google: {
|
||||
families: [
|
||||
'Fira Sans:ital,wght@0,400;0,500;0,600;1,500;1,600'
|
||||
]
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
<!-- JS Plugins + Main script -->
|
||||
{{ $scripts := slice }}
|
||||
{{ range site.Params.plugins.js}}
|
||||
{{ if findRE "^http" .link }}
|
||||
<script src="{{ .link | absURL }}" type="application/javascript" {{.attributes | safeHTMLAttr}}></script>
|
||||
{{ else }}
|
||||
{{ $scripts = $scripts | append (resources.Get .link) }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ $scripts := $scripts | append (resources.Get "js/script.js" | minify) }}
|
||||
{{ $scripts := $scripts | resources.Concat "/js/script.js" | minify | fingerprint "sha512" }}
|
||||
<script crossorigin="anonymous" defer="defer" data-turbolinks-suppress-warning integrity="{{ $scripts.Data.Integrity }}" type="application/javascript">{{$scripts.Content | safeJS}}</script>
|
||||
|
||||
<!-- cookie -->
|
||||
{{ if site.Params.cookies.enable }}
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/js-cookie/2.2.1/js.cookie.min.js"></script>
|
||||
<div id="js-cookie-box" class="cookie-box cookie-box-hide">
|
||||
This site uses cookies. By continuing to use this website, you agree to their use. <span id="js-cookie-button" class="btn btn-sm btn-outline-primary ml-2">I Accept</span>
|
||||
</div>
|
||||
<script>
|
||||
(function ($) {
|
||||
const cookieBox = document.getElementById('js-cookie-box');
|
||||
const cookieButton = document.getElementById('js-cookie-button');
|
||||
if (!Cookies.get('cookie-box')) {
|
||||
cookieBox.classList.remove('cookie-box-hide');
|
||||
cookieButton.onclick = function () {
|
||||
Cookies.set('cookie-box', true, {
|
||||
expires: {{ site.Params.cookies.expire_days }}
|
||||
});
|
||||
cookieBox.classList.add('cookie-box-hide');
|
||||
};
|
||||
}
|
||||
})(jQuery);
|
||||
</script>
|
||||
|
||||
<!-- cookie style -->
|
||||
<style>
|
||||
.cookie-box {
|
||||
position: fixed;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
text-align: center;
|
||||
z-index: 9999;
|
||||
padding: 1rem 2rem;
|
||||
background: rgb(71, 71, 71);
|
||||
transition: all .75s cubic-bezier(.19, 1, .22, 1);
|
||||
color: #fdfdfd;
|
||||
}
|
||||
|
||||
.cookie-box-hide {
|
||||
display: none;
|
||||
}
|
||||
</style>
|
||||
{{ end }}
|
||||
53
themes/editor-hugo/layouts/partials/style.html
Normal file
53
themes/editor-hugo/layouts/partials/style.html
Normal file
@@ -0,0 +1,53 @@
|
||||
<!-- plugins + stylesheet -->
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
{{ $styles := slice }}
|
||||
{{ range site.Params.plugins.css }}
|
||||
{{ if findRE "^http" .link }}
|
||||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="{{ .link | absURL }}" {{.attributes | safeHTMLAttr}} >
|
||||
{{ else }}
|
||||
{{ $styles = $styles | append (resources.Get .link) }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ $styles := $styles | append (resources.Get "scss/style.scss" | resources.ExecuteAsTemplate "style.scss" . | toCSS) }}
|
||||
{{ $styles := $styles | resources.Concat "/css/style.css" | minify | fingerprint "sha512"}}
|
||||
<style crossorigin="anonymous" media="all" type="text/css" integrity="{{ $styles.Data.Integrity }}">{{$styles.Content | safeCSS}}</style>
|
||||
|
||||
<style>
|
||||
blockquote::before {
|
||||
display: none;
|
||||
font-family: "{{ with site.Params.variables }} {{.icon_font}} {{ end }}";
|
||||
}
|
||||
|
||||
.content ul li:not(.nav-item) {
|
||||
position: relative;
|
||||
margin-bottom: 5px;
|
||||
list-style-type: none;
|
||||
}
|
||||
.content ul li:not(.nav-item) svg {
|
||||
margin-right: 6px;
|
||||
transform: scale(0.8);
|
||||
color: {{ with site.Params.variables }} {{.primary_color}} {{ end }};
|
||||
}
|
||||
.content ul li:not(.nav-item)::before {
|
||||
font-size: 14px;
|
||||
font-family: "{{ with site.Params.variables }} {{.icon_font}} {{ end }}";
|
||||
font-weight: 900;
|
||||
content: "\f069";
|
||||
display: none;
|
||||
}
|
||||
.notices p::before {
|
||||
position: absolute;
|
||||
top: 2px;
|
||||
font-family: "{{ with site.Params.variables }} {{.icon_font}} {{ end }}";
|
||||
font-weight: 900;
|
||||
content: "\f05a";
|
||||
left: 10px;
|
||||
display: none;
|
||||
}
|
||||
.notices p svg {
|
||||
position: absolute;
|
||||
top: 7px;
|
||||
left: 10px;
|
||||
color: {{ with site.Params.variables }} {{.white}} {{ end }};
|
||||
}
|
||||
</style>
|
||||
17
themes/editor-hugo/layouts/partials/widgets/about-me.html
Normal file
17
themes/editor-hugo/layouts/partials/widgets/about-me.html
Normal file
@@ -0,0 +1,17 @@
|
||||
{{ "<!-- about me -->" | safeHTML }}
|
||||
<div class="widget text-center">
|
||||
{{ with site.GetPage "/about" }}
|
||||
<span class="widget-title">{{ i18n `about_me` }}</span>
|
||||
{{ if .Params.image }}
|
||||
<img loading="lazy" class="mb-4 rounded-circle w-100" style="max-width:150px" src="{{ .Params.image | absURL }}" alt="Author">
|
||||
{{ else if .Params.email }}
|
||||
<img loading="lazy" class="mb-4 rounded-circle w-100" style="max-width:150px" src="https://www.gravatar.com/avatar/{{ md5 .Params.email }}?s=150&pg&d=identicon">
|
||||
{{ end }}
|
||||
<p class="text-uppercase small mb-2">{{ i18n `my_name_is` }}</p>
|
||||
<h1 class="h4 text-primary font-primary mb-3">{{ .Params.name }}</h1>
|
||||
<div class="mb-0 mx-auto" style="max-width:460px">{{ .Summary }} <a href="{{ .Permalink }}" aria-label="About me" class="text-underline d-inline-block">{{ i18n `read_more` }}</a></div>
|
||||
|
||||
{{ end }}
|
||||
|
||||
|
||||
</div>
|
||||
14
themes/editor-hugo/layouts/partials/widgets/categories.html
Normal file
14
themes/editor-hugo/layouts/partials/widgets/categories.html
Normal file
@@ -0,0 +1,14 @@
|
||||
{{ "<!-- categories -->" | safeHTML }}
|
||||
<div class="widget">
|
||||
<span class="widget-title">{{ i18n "categories" }}</span>
|
||||
|
||||
{{ if isset site.Taxonomies "categories" }}
|
||||
{{ if not (eq (len site.Taxonomies.categories) 0) }}
|
||||
<ul class="sidebar-post-categories list-unstyled">
|
||||
{{ range $name, $items := site.Taxonomies.categories }}
|
||||
<li><a href="{{ `categories/` | absLangURL }}{{ $name | urlize | lower }}/">{{ $name | humanize }} <span>{{ len $items }}</span></a></li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</div>
|
||||
25
themes/editor-hugo/layouts/partials/widgets/recent-post.html
Normal file
25
themes/editor-hugo/layouts/partials/widgets/recent-post.html
Normal file
@@ -0,0 +1,25 @@
|
||||
{{ "<!-- latest post -->" | safeHTML }}
|
||||
<div class="widget">
|
||||
<span class="widget-title">{{ i18n `recent_post` }}</span>
|
||||
|
||||
<ul class="sidebar-recent-post list-unstyled">
|
||||
{{ $related := ( where site.RegularPages "Type" "in" site.Params.mainSections ) | intersect (where site.Pages ".Title" "!=" .Title) | union (site.RegularPages.Related . ) }}
|
||||
{{ range first 3 $related }}
|
||||
<li class="recent-post-item">
|
||||
<div class="media">
|
||||
<div class="media-body mr-2">
|
||||
<h5><a href="{{ .Permalink }}">{{ .Title }}</a></h5>
|
||||
<span class="card-meta">
|
||||
<span class="card-meta-date">{{.PublishDate.Format "Jan 02, 2006"}}</span>
|
||||
</span>
|
||||
</div>
|
||||
<a href="{{ .Permalink }}" class="recent-post-image">
|
||||
{{ range first 1 .Params.Images }}
|
||||
<img loading="lazy" class="img-fluid rounded-circle" src="{{ . | absURL }}">
|
||||
{{ end }}
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
</div>
|
||||
10
themes/editor-hugo/layouts/partials/widgets/search.html
Normal file
10
themes/editor-hugo/layouts/partials/widgets/search.html
Normal file
@@ -0,0 +1,10 @@
|
||||
{{ "<!-- Search -->" | safeHTML }}
|
||||
{{ if site.Params.search }}
|
||||
<div class="widget">
|
||||
<h5 class="widget-title"><span>{{ i18n "search" }}</span></h5>
|
||||
<form action="{{ `search`| relLangURL }}" class="widget-search">
|
||||
<input id="search-query" name="s" type="search" placeholder="{{ i18n `search_placeholder`}}">
|
||||
<button type="submit"><i class="ti-search"></i></button>
|
||||
</form>
|
||||
</div>
|
||||
{{ end }}
|
||||
13
themes/editor-hugo/layouts/partials/widgets/tags.html
Normal file
13
themes/editor-hugo/layouts/partials/widgets/tags.html
Normal file
@@ -0,0 +1,13 @@
|
||||
{{ "<!-- tags -->" | safeHTML }}
|
||||
<div class="widget">
|
||||
<span class="widget-title">{{ i18n "tags" }}</span>
|
||||
{{ if isset site.Taxonomies "tags" }}
|
||||
{{ if not (eq (len site.Taxonomies.tags) 0) }}
|
||||
<ul class="sidebar-post-tags list-unstyled list-inline">
|
||||
{{ range $name, $items := site.Taxonomies.tags }}
|
||||
<li class="list-inline-item"><a href="{{ `tags/` | absLangURL }}{{ $name | urlize | lower }}/">{{ $name | humanize }}</a></li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</div>
|
||||
@@ -0,0 +1,3 @@
|
||||
{{- range .Widgets -}}
|
||||
{{- partial ( print "widgets/" . ) $.Scope -}}
|
||||
{{- end -}}
|
||||
Reference in New Issue
Block a user