From 8eb1554b13532a2441b41d2018800c56cfa84ce9 Mon Sep 17 00:00:00 2001
From: Ben Schlegel <31989404+benschlegel@users.noreply.github.com>
Date: Thu, 21 Sep 2023 16:54:33 +0000
Subject: [PATCH] fix(explorer): display names for folders without frontmatter (#494)
---
quartz/components/ExplorerNode.tsx | 5 ++++-
docs/features/explorer.md | 2 ++
2 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/docs/features/explorer.md b/docs/features/explorer.md
index f48ad1b..4568ec0 100644
--- a/docs/features/explorer.md
+++ b/docs/features/explorer.md
@@ -8,6 +8,8 @@
By default, it shows all folders and files on your page. To display the explorer in a different spot, you can edit the [[layout]].
+Display names for folders get determined by the `title` frontmatter field in `folder/index.md` (more detail in [[Authoring Content]]). If this file does not exist or does not contain frontmatter, the local folder name will be used instead.
+
> [!info]
> The explorer uses local storage by default to save the state of your explorer. This is done to ensure a smooth experience when navigating to different pages.
>
diff --git a/quartz/components/ExplorerNode.tsx b/quartz/components/ExplorerNode.tsx
index 9bdd0df..e5ceb0b 100644
--- a/quartz/components/ExplorerNode.tsx
+++ b/quartz/components/ExplorerNode.tsx
@@ -46,7 +46,10 @@
if (file.path[0] !== "index.md") {
this.children.push(new FileNode(file.file.frontmatter!.title, file.file, this.depth + 1))
} else {
- this.displayName = file.file.frontmatter!.title
+ const title = file.file.frontmatter?.title
+ if (title && title !== "index" && file.path[0] === "index.md") {
+ this.displayName = title
+ }
}
} else {
const next = file.path[0]
--
Gitblit v1.10.0