ドキュメント管理にObsidianを愛用しています。 (社内では Notion 派が優勢です、、、)
かねてから、手間をかけずにブログ化できたら良いなあと思い探していたところ、良い方法を確立できたので共有したいと思います。
アウトプット
- こんな感じになります
要件
Must
- Obsidian で書いたものがそのままブログ化されること
- ノートによって公開 or 非公開 を設定できること
Want
- ブログ更新の手数が少ないこと
- Obsidian の特性を活かし、ノート間の繋がりが可視化されること
実現方法
obsidian-zola という、Obsidian をZolaに対応したブログに変換するライブラリを見つけました。
必要なもの
- Obsidian の Vault(フォルダ)の GitHub リポジトリ
- obsidian-zola に必要な設定ファイル
- Netlifyアカウント
やり方
- obsidian-zola の READMEの通りに設定すると簡単にできました
- 参考)Obsidian を Netlify を使って無料で Web サイトとして公開する方法
更新手順
- Obsidian の Git 管理を簡単にしてくれるプラグインである obsidian-gitを使って自分のリポジトリに変更を Push するだけで Netlify のデプロイが実行され、ブログに変更が反映されます
- 私は
git commit & git push
をキーボードショートカット(Ctrl + S
)に設定しているので、一つの動作で Obsidian の Git へのバックアップとブログのデプロイが実行されるようにしています
- 私は
非公開設定について
- ドキュメントには非公開にしたい場合は
.gitignore
を使え とありました - しかし、個人的なノートも含めて Git 管理しつつ、公開設定はブログ側でできるのが理想だと思っていました
どうやったか
- obsidian-zola を fork し、非公開フォルダを設定できるようにしました
- Obsidian 側に置く設定ファイルも変更し、fork した自分の obisidia-zolaを実行するようにしたところ、うまく反映されました
- 具体的には、非公開にしたいノートは手元の Obsidian の
/private/
配下に置き、/private/*
配下はデプロイ時に無視するように設定しました- 追加した設定項目
- Obsidian 側に置く設定ファイルに除外ディレクトリを記述
Obsidian 側のディレクトリ一覧
以下は非公開フォルダに設定。
- config: Obsidian に関連するが、Obsidian 以外の設定ファイル。WebClip に使っているMarkDownloadのフォーマットの json 等を置いている。
- files: 画像等のアセット
- private: 非公開にしたいノート
- templates: ノートのテンプレート
デプロイされたブログのタブ(ディレクトリ)
非公開に設定したフォルダは除外されている。
今後やりたいこと
ノートのメタ情報を反映できるようにしたい
- Obsidian ではフロントマターという、ノートのメタ情報を書ける
- このフロントマターを、Zola のフロントマターに相当するTaxonomiesに変換できるようにして、タグ等も反映するようにしたい
見た目をカスタマイズしたい
- 現状、obsidian-zola をそのまま使っている限り、全員同じ見た目になってしまい、個性がない
- オリジナルな見た目(特に Top ページ)にしたい