logo
/
公開フォルダの構成

前提

管理的には以下のような構成にしたい
- blog
	- yyyymmdd_blogid
		- 〇〇を〇〇した.md
		- img.jpeg
		- img1.jpeg
	- yyyymmdd_blogid2
		- 〇〇がわからない.md
しかし閲覧的には以下のような構成にしたい
- blog
	- 〇〇を〇〇した.md
	- 〇〇がわからない.md

閲覧用に合わせた時の問題

  • 関連リソースを同じ場所で管理できない
    • 🧾2025-02-04 worksフォルダ検討で書いた通り、公開用ファイルは別アプリで手を加えたり同名ファイルで上書きなどをしたいので、できればフォルダにまとめたい
  • 日付でソートされない
    • タイトル
      • mdファイルのタイトルに日付をつけると、それがタイトルに反映されるので冗長
      • titleフロントマターで上書きはできるが、二重管理になる
    • ソートだけなら
      • 公開側システムで日付フロントマターを読んで並び替えすればよい
      • Obsidianやシステムエクスプローラーではそれはできない

解決策

  • 公開用システムで特殊な処理を加える
    • 公開用フォルダを指定する→['blog','works']
    • サイドメニューを構成する際、公開用フォルダにマッチしたら以下の処理を行う
      • ページレンダリングはフォルダを探索した最短のマークダウンを対象とする
      • urlはマークダウンの直親フォルダを使用する
        • 日付と名前がキーになるのでフォルダが別れていても重複は起こり得ないはず
        • 年や月でフォルダを分類しても常に同じurlになる