diff options
Diffstat (limited to 'vhosts/blog/nuldoc-src')
| -rw-r--r-- | vhosts/blog/nuldoc-src/components/global_header.ts | 10 | ||||
| -rw-r--r-- | vhosts/blog/nuldoc-src/pages/tag.ts | 4 | ||||
| -rw-r--r-- | vhosts/blog/nuldoc-src/pages/tag_list.ts | 13 |
3 files changed, 22 insertions, 5 deletions
diff --git a/vhosts/blog/nuldoc-src/components/global_header.ts b/vhosts/blog/nuldoc-src/components/global_header.ts index a5130612..2913ea6d 100644 --- a/vhosts/blog/nuldoc-src/components/global_header.ts +++ b/vhosts/blog/nuldoc-src/components/global_header.ts @@ -6,6 +6,11 @@ export function globalHeader(config: Config): Element { "header", [["class", "header"]], el( + "div", + [["class", "site-logo"]], + el("a", [["href", "/"]], text(config.blog.siteName)), + ), + el( "nav", [["class", "nav"]], el( @@ -14,11 +19,6 @@ export function globalHeader(config: Config): Element { el( "li", [], - el("a", [["href", "/"]], text(config.blog.siteName)), - ), - el( - "li", - [], el("a", [["href", "/about/"]], text("About")), ), el( diff --git a/vhosts/blog/nuldoc-src/pages/tag.ts b/vhosts/blog/nuldoc-src/pages/tag.ts index f501cb33..a18feb62 100644 --- a/vhosts/blog/nuldoc-src/pages/tag.ts +++ b/vhosts/blog/nuldoc-src/pages/tag.ts @@ -12,6 +12,8 @@ import { TaggedPage } from "./tagged_page.ts"; export interface TagPage extends Page { tagSlug: string; tagLabel: string; + numOfPosts: number; + numOfSlides: number; } export async function generateTagPage( @@ -56,5 +58,7 @@ export async function generateTagPage( href: `/tags/${tagSlug}/`, tagSlug: tagSlug, tagLabel: tagLabel, + numOfPosts: pages.filter((p) => !("event" in p)).length, + numOfSlides: pages.filter((p) => "event" in p).length, }; } diff --git a/vhosts/blog/nuldoc-src/pages/tag_list.ts b/vhosts/blog/nuldoc-src/pages/tag_list.ts index 2b58ff32..684c1289 100644 --- a/vhosts/blog/nuldoc-src/pages/tag_list.ts +++ b/vhosts/blog/nuldoc-src/pages/tag_list.ts @@ -48,6 +48,19 @@ export async function generateTagListPage( [["class", "entry-header"]], el("h2", [], text(tag.tagLabel)), ), + el( + "footer", + [["class", "entry-footer"]], + text((() => { + const posts = tag.numOfPosts === 0 + ? "" + : `${tag.numOfPosts}件の記事`; + const slides = tag.numOfSlides === 0 + ? "" + : `${tag.numOfSlides}件のスライド`; + return `${posts}${posts && slides ? "、" : ""}${slides}`; + })()), + ), ), ) ), |
