やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

zolaのサイトをつくる工程

 簡単なことからやっていくと早く理解できる。

場所とファイル

 各ディレクトリに各ファイルをつくる。

ディレクト 拡張子
templates/ html
content/ md

予約ファイル名

templates/

予約ファイル名 役割
index.html サイトのトップページ用テンプレート
section.html 各セクションの一覧ページ用テンプレート
page.html 各セクションの末端ページ用テンプレート

content/

予約ファイル名 役割
{section}/index.md 単一ページ(page
{section}/_index.md 一覧ページ(section

工程

  1. トップページをつくる
  2. 単一ページをつくる
  3. 一覧ページをつくる
  4. 単一ページをつくる(前,次リンク付)

 これでindex, page, section3種類のページ作成についてひととおり学べる。一般的なブログサイトを構築することができるはずだ。

1. トップページをつくる

  1. index.htmlを追加する

 すでにやった。以下を参考にする。

  1. zolaを使ってサイトを構築してみる(zola init)
  2. Zolaのconfig.tomlを設定する
  3. Zola template/index.html を書く

2. 単一ページをつくる

  1. page.htmlを追加する
  2. {section}/index.mdを追加する

3. 一覧ページをつくる

  1. {section}/section.htmlを追加する
  2. {section}/_index.mdを追加する

4. 単一ページをつくる(前,次リンク付)

  1. /blog/section.htmlを追加する
  2. page.htmlを追加する
  3. index.mdを追加する

手順

 実際に手を動かすときの作業リスト。だれが、どこで、なにをするか。

トップページをつくる

No 場所 仕事
1 templates/index.html HTMLとteraでテンプレートを書く
2 / 端末でzola serveする
3 zola templates/index.html teraを解析する(toml,mdから変数を取得するなど)
4 zola templates/index.html HTMLを作る
5 zola - ローカルHTTPサーバを起動する
6 ブラウザ 指定されたURLhttp://127.0.0.1:1111にアクセスする
7 ブラウザ サイトを確認する

末端ページをつくる

No 場所 仕事
1 content/about.md フロントマターでメタデータを書く
2 content/about.md Markdownで記事を書く
3 templates/page.html HTMLとteraでテンプレートを書く
4 / 端末でzola serveする
5 zola templates/page.html teraを解析する(toml,mdから変数を取得するなど)
6 zola templates/page.html HTMLを作る
7 zola - ローカルHTTPサーバを起動する
8 ブラウザ 指定されたURLhttp://127.0.0.1:1111/aboutにアクセスする
9 ブラウザ サイトを確認する

 なお、aboutは任意の名前に置き換えてよい。例外はindex,_index。それら2つの名前は予約されている。別の名前にすること。

セクションページをつくる

No 場所 仕事
1 content/blog/2021-08-01.md フロントマターでメタデータを書く
2 content/blog/2021-08-01.md Markdownで記事を書く
3 templates/blog/section.html HTMLとteraで一覧ページのテンプレートを書く
4 templates/blog/page.html HTMLとteraで記事ページのテンプレートを書く
5 / 端末でzola serveする
6 zola templates/**/*.html teraを解析する(toml,mdから変数を取得するなど)
7 zola templates/**/*.html HTMLを作る
8 zola - ローカルHTTPサーバを起動する
9 ブラウザ http://127.0.0.1:1111/blogにアクセスする
10 ブラウザ 記事が一覧されていることを確認する
11 ブラウザ http://127.0.0.1:1111/blog/2021-08-01にアクセスする
12 ブラウザ 記事の内容が表示されていることを確認する

 なお、blog, 2021-08-01は任意の名前に置き換えてよい。例外はindex,_index。それら2つの名前は予約されている。別の名前にすること。

ポイント

ページをつくる

 新しいページを追加したい。このとき、いくつかの書き方がある。たとえばサイトの説明をするaboutページをつくるなら以下。

ディレクト URL
content/about.md {base_url}/about

 また、つぎのようにしても同じだ。

ディレクト URL
content/about/index.md {base_url}/about

 zola buildしてpublic/配下をみるとわかる。どちらの作り方でもabout/index.htmlとして作られる。

セクションをつくる

 一覧ページを追加したい。任意ディレクトリをつくり、その配下に_index.mdを作ればよい。

ディレクト URL 種別
content/blog/_index.md {base_url}/blog section
content/blog/2021-01-01.md {base_url}/blog/2021-01-01 page
content/blog/2021-01-02.md {base_url}/blog/2021-01-02 page

所感

 以上。とりあえず単一ページをつくるところからはじめていく。

対象環境

$ uname -a
Linux raspberrypi 5.4.83-v7l+ #1379 SMP Mon Dec 14 13:11:54 GMT 2020 armv7l GNU/Linux