summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEltrac <hi@guhub.cn>2025-04-18 14:40:33 +0800
committerEltrac <hi@guhub.cn>2025-04-18 14:40:33 +0800
commitc41eaa135b6efd9029e8a52e633eaddf4a4698f2 (patch)
tree05b919e6ceafc238bab1a19e04059c73ab8a0f5f
parent92188549d8cae1ed58b57cba2229217b9c1ff75c (diff)
refactor: separate post single template and page template
Former-commit-id: 4f0ebaeed13c1c44c7d7c5778b187b69f5849552
-rw-r--r--layouts/_default/single.html61
-rw-r--r--layouts/posts/single.html73
2 files changed, 77 insertions, 57 deletions
diff --git a/layouts/_default/single.html b/layouts/_default/single.html
index f81f9208..bfe80ad5 100644
--- a/layouts/_default/single.html
+++ b/layouts/_default/single.html
@@ -1,46 +1,10 @@
{{ define "main" }}
- {{ if eq .Type "posts" }}
- {{ partial "components/post-page-header.html" . }}
- {{ else }}
- {{ partial "header.html" . }}
- {{ end }}
+ {{ partial "header.html" . }}
<article
- class="post {{ .Site.Language.LanguageName }}"
+ class="page {{ .Site.Language.LanguageName }}"
id="article"
>
- <!-- Post Header -->
- <header
- style="view-transition-name: post-{{ .File.UniqueID }}"
- class="post-header"
- >
- {{ if in .Site.Params.mainSections .Type }}
- {{ partial "components/banner.html" . }}
- <!-- Title and Subtitle -->
- <h1 class="post-title">
- {{ .Title }}
- {{ with .Params.subtitle }}
- <small class="post-subtitle">{{ . }}</small>
- {{ end }}
- </h1>
- <!-- Post Meta -->
- <div class="post-meta">
- {{ if .Date }}
- <time class="post-date" datetime="{{ .Date.Format "2006-01-02 15:04:05 MST" }}">
- {{ .Date.Format "2006-1-2" }}
- </time>
- {{ end }}
- <span>·</span>
- {{ if .Params.categories }}
- <a class="post-category" href="/categories/{{ .Params.categories | urlize }}">{{ .Params.categories }}</a>
- {{ end }}
- {{ range .Params.tags }}
- <a class="post-tag" href="{{ site.LanguagePrefix }}/tags/{{ lower . | urlize }}/">#{{ . }}</a>
- {{ end }}
- </div>
- {{ end }}
- </header>
-
- <!-- Post Content -->
+ <!-- Content -->
<div id="post-content" class="post-content markdown-body"
style="view-transition-name: post-content-{{ .File.UniqueID }}">
{{ if .Params.toc }}
@@ -48,23 +12,8 @@
{{ end }}
{{ .Site.Params.postHeaderContent | safeHTML }}
{{ .Content }}
- {{ if and (eq .Site.Language.Lang "zh") (eq .Section "posts") }}
- <p style="font-size: 0.9rem">如果你觉得文章对你有帮助,可以考虑<a href="/sponsor">赞助作者</a></p>
- {{ end }}
</div>
- {{ if in .Site.Params.mainSections .Type }}
- {{ partial "components/comment.html" . }}
- {{ with site.RegularPages.Related . | first 5 }}
- <p>{{ T "relatedContent" }}</p>
- <ul>
- {{ range . }}
- <li><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></li>
- {{ end }}
- </ul>
- {{ end }}
- {{ end }}
-
<script src="/js/tocbot.min.js"></script>
<script>
tocbot.init({
@@ -77,7 +26,5 @@
</script>
</article>
- {{ if ne .Type "posts" }}
- {{ partial "footer.html" . }}
- {{ end }}
+ {{ partial "footer.html" . }}
{{ end }}
diff --git a/layouts/posts/single.html b/layouts/posts/single.html
new file mode 100644
index 00000000..525db84d
--- /dev/null
+++ b/layouts/posts/single.html
@@ -0,0 +1,73 @@
+{{ define "main" }}
+ {{ partial "components/post-page-header.html" . }}
+ <article
+ class="post {{ .Site.Language.LanguageName }}"
+ id="article"
+ >
+ <!-- Post Header -->
+ <header
+ style="view-transition-name: post-{{ .File.UniqueID }}"
+ class="post-header"
+ >
+ {{ partial "components/banner.html" . }}
+ <!-- Title and Subtitle -->
+ <h1 class="post-title">
+ {{ .Title }}
+ {{ with .Params.subtitle }}
+ <small class="post-subtitle">{{ . }}</small>
+ {{ end }}
+ </h1>
+ <!-- Post Meta -->
+ <div class="post-meta">
+ {{ if .Date }}
+ <time class="post-date" datetime="{{ .Date.Format "2006-01-02 15:04:05 MST" }}">
+ {{ .Date.Format "2006-1-2" }}
+ </time>
+ {{ end }}
+ <span>·</span>
+ {{ if .Params.categories }}
+ <a class="post-category" href="/categories/{{ .Params.categories | urlize }}">{{ .Params.categories }}</a>
+ {{ end }}
+ {{ range .Params.tags }}
+ <a class="post-tag" href="{{ site.LanguagePrefix }}/tags/{{ lower . | urlize }}/">#{{ . }}</a>
+ {{ end }}
+ </div>
+ </header>
+
+ <!-- Post Content -->
+ <div id="post-content" class="post-content markdown-body"
+ style="view-transition-name: post-content-{{ .File.UniqueID }}">
+ {{ if .Params.toc }}
+ <div id="toc-container"><div id="toc"></div></div>
+ {{ end }}
+ {{ .Site.Params.postHeaderContent | safeHTML }}
+ {{ .Content }}
+ {{ if eq .Site.Language.Lang "zh" }}
+ <p style="font-size: 0.9rem">如果你觉得文章对你有帮助,可以考虑<a href="/sponsor">赞助作者</a></p>
+ {{ end }}
+ </div>
+
+ {{ partial "components/comment.html" . }}
+
+ {{ with site.RegularPages.Related . | first 5 }}
+ <p>{{ T "relatedContent" }}</p>
+ <ul>
+ {{ range . }}
+ <li><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></li>
+ {{ end }}
+ </ul>
+ {{ end }}
+
+ <script src="/js/tocbot.min.js"></script>
+ <script>
+ tocbot.init({
+ tocSelector: '#toc',
+ contentSelector: '#post-content',
+ headingSelector: 'h2, h3:not(blockquote > h3)',
+ hasInnerContainers: true,
+ scrollSmoothOffset: -30
+ });
+ </script>
+
+ </article>
+{{ end }}