LoginSignup
1
1

More than 3 years have passed since last update.

[Hugo] Learn で構築したサイトにページを追加する方法まとめ

Posted at

概要

Hugo で構築したサイト(テーマ:Learn)にページの追加とレイアウトを適用する手順についてまとめる。

前提

上記に記載の手順環境構築、ページの作成を行っており、「content」 フォルダに以下に posts フォルダがあることを前提として説明する

content
└── posts
    └── my-first-post.md

現時点で完成しているページ
スクリーンショット 2020-09-16 23.06.41.png

ゴール

ページ(子)の追加とインデックスページ(親)の設定を行い、以下のようなサイトを作成することをゴールとする

サイト

スクリーンショット_2020-10-15_15_55_18.png

フォルダ構成

最終的なファイル構成は以下の通り

content
├── _index.md         // baseurl 
└── posts   
    ├── _index.md     // .../post 
    ├── my-first-post.md    // .../post/my-first-post
    └── my-second-post.md   // .../post/my-second-post

サイトのインデックスページ、ページの設定はフォルダ構成に依存する

ページの作成

hugo newコマンドを実行することでページ(子)が作成される。
前回の記事で、以下のコマンドを実行済

hugo new posts/my-first-post.md 

このコマンドを実行することで、「archetypes」フォルダの「default.md」 ファイルに記載している内容が指定した.md ファイルに追加される。

デフォルトで追加される項目は以下の通り

default.md
---
title: "{{ replace .Name "-" " " | title }}"
date: {{ .Date }}
draft: true
---

これらのパラメーターを埋めることで、Web サイトを作ることができる。

目次のタイトル名の変更方法

目次のタイトルの変更方法について説明する
スクリーンショット_2020-10-13_15_03_04.png

タイトルは、「my-first-post.md」の「title:」で設定しているため、ここの文字列を変更する

my-first-post.md
---
title: "My First Post" // ここで指定している
date: 2020-XX-XX
draft: true
---

# タイトル
hoge サイトを作成してみる

title: "第1章"に変更すると、以下の 3 箇所が変更される
スクリーンショット_2020-10-13_15_13_24.png

ページ(子)の追加方法

ページの追加方法は、以下の2通り
1.新規でページを作成した時と同様に、hugo new コマンドで実行
2.hugo newコマンドを実行した時に追加される項目を手動で記入

default.md ファイルの中身をコマンドで行うか、手動で入力するかの違いである

ここでは、「my-first-post.md」をコピーして、「my-second-post.md」と名前を変更し、同じ階層に保存し、ページを追加する

my-second-post.md
---
title: "第2章"
date: 2020-XX-XX
draft: true
---

# ページの追加
my-first-post.md をコピーして中身を修正し、my-second.mdファイルとして保存

ページが追加された
スクリーンショット 2020-10-13 15.27.02.png

インデックスページ(親)の追加

「Post」 や「My New Hugo Site」をクリックした時に、表示されるページの設定を行いたい
スクリーンショット_2020-10-13_15_34_02.png
現在のファイル構成をみると、以下の通りになっている。これらは、インデックスページと呼ばれる、親ページである。Learn ガイド:_index.md

content
└── posts
    ├── my-first-post.md
    └── my-second-post.md

デフォルトでは、「Post」 や 「My New Hugo Site」 ページを構成しているファイルがない。それぞれのフォルダに_index.mdを作成することで、ページを構成できる。

content > _index.md の追加
_index.md
---
title: "サイトの案内"
date: 2020-XX-XX
draft: true
---
このサイトでは、Learn のカスタマイズをテストしています。

スクリーンショット 2020-10-13 15.49.22.png

posts > _index.md の追加
_index.md
---
title: "カスタマイズ手順"
date: 2020-XX-XX
draft: true
---
# Learn のカスタマイズ
_index ファイルを作成することで、このページを編集できるようになります。

スクリーンショット 2020-10-13 15.49.13.png

ここまでの操作で、以下のようなファイル構成となった

content
├── _index.md
└── posts
    ├── _index.md
    ├── my-first-post.md
    └── my-second-post.md

ページのレイアウトの適用

Learn では通常のページのレイアウトの他に、チャプターページ用のレイアウトを提供している
Learn ガイド:Create your first chapter page
ヘッダー部分に、chapter: true と追記し、以下のように記載することでレイアウトが適用される

### 小見出し
# タイトル
ここに文章をかく

posts > _index.md ファイルにチャプター用のレイアウトを適用

_index.md
---
title: "カスタマイズ手順"
date: 2020-XX-XX
draft: true
chapter: true // 追記
---
### 初心者向け
# Learn のカスタマイズ
_index ファイルを作成することで、このページを編集できるようになります。

スクリーンショット 2020-10-13 16.01.23.png

参考

Hugo Learn ガイド
Hugo コンテンツ編成

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1