本サイトは、アイクラフト株式会社のブログ・サイトとして、新たにサイトを作成致しました。 記念すべき最初の投稿では、本サイトの構築内容についてお話したいと思います。
本サイトを github pages と Jekyll の2つのツールを使い、ブログを作りました。 要は、wordpressの静的ジェネレータ版といったところです。 まずは、以下で2つのツールを紹介します。
githubは、ソースコードの管理ツールとして有名ですが、実はgithub pageという便利な機能が備わっています。githubにgithub page用のレポジトリを作成し、html,cssなどのソースを入れておくだけで、ページがインターネット上に公開されます。ざっと、特徴を述べておきます。
【github pageの特徴】
jekyllとは、静的サイトジェネレータのことです。 テンプレートテーマが豊富で、マークダウンにも対応しています。 一応、github pageは他のジェネレータとの組み合わせでも構築可能です。
ですが、github pageで静的なwebサイトを作成するのであれば、Jekyllをオススメします。 Jekyllである場合、自動でビルドしページを更新してくれるので、非常に楽。 ブラウザ上でgithubのレポジトリに直接記事を書き込み、コミットするだけで簡単に更新されます。
jekyllは、Liquidというテンプレートエンジンが使えます。
標準のタグはサポートされており、jekyllは追加として独自のタグが備わっています。
特に便利なのがinclude
タグです。jsでもこのような機能がありますが、jekyllでは標準で使えます。
複数のページの共通部分を、単一のファイルで共有できます。そこに修正が入った場合でも、1ファイルの修正だけで済むので便利です。
ディレクトリ構成
htmlファイルの読み込みの流れ
index.html→page.html→include内のhtmlのようなかんじで呼び出される。
ページを増やしたいならば、root直下にhtmlを作成し、layoutファイルを指定します。
記事の作成
postディレクトリにmdファイルを入れるだけで、自動でページが作成されます。
ただ、記事の上部に以下を記載する必要があります。
レイアウトpost(mdで指定したレイアウトファイル)の本文に{ content }
と入れると、そのレイアウトで記事を表示できます。
urlは、上記の日付とタイトルを元に作成される。
URL : https://アカウント名.hithub.io/posts/2017/11/04/Welcome to Jekyll!
topページに複数の記事を表示させたいのであれば、以下のように書く。
{% for post in paginator.posts %}
<a href="{{ post.url }}">{{ post.title }}></a>
{% endfor %}
各変数については、Jekyllの公式サイトで確認できます。
github pages+jekyllの構築をざっくりとした手順で書いておきます
具体的な手順は、以下参照
GitHub Pages の Jekyll で Web サイトを無料公開する方法
jekyllは、比較的ビルドに掛かる時間が長いので、ページ編集後にすぐに確認できない。
最近はHexoと呼ばれるジェネレータのビルドが早いらしく、乗り換える人も多いらしいです。
しかし、jekyllは、構築さえすれば記事をかくだけで、後は手を加える必要がないという最大の魅力があるので、 Jekyllのほうが個人的に良いかと思います。 サーバの再起動もビルドも必要ないので、、、
私みたいにWEBの知識が無くても、1からページを作成できるこができて、コストもかからないので WEBの勉強を0からしたい人にはうってつけかと思います。