ブログサイトで使用できる変数

config.yml や任意の Markdown ファイル .md の先頭には YAML でデータ変数を定義することができます。

config.ymlファイルに定義できる変数

変数     説明
typeブログサイトを作成する場合は blog を指定してください。
paginate1 つのリストページ トップページを含む に表示する記事の数を指定します。
siteurlサイトの URL を指定します。サイト URL http:// または https:// から始まります。末尾には / を含みません。末尾に / を含めた場合は自動的に取り除かれます。タイトルのリンク URL sitemap.xml OGP プロパティ og:url で使用されます。
titleサイトのタイトルを指定します。タイトルバーに表示されます。指定された値は <title> タグと OGP プロパティ og:site_name og:title にも設定されます。必要に応じて各ページの Markdown ファイルで上書き定義しましょう。
descriptionサイトの説明を指定します。指定された値は <meta name="description" content="..."> OGP プロパティ og:description に設定されます。各ページの Markdown ファイルで上書き定義しましょう。
copyrightサイトの著作の年を指定します。著作の年はページのフッターに表示されます。
authorサイトの著者名を指定します。著者名はページのフッターに表示されます。指定を省略すると著者名の代わりにメールアドレスが表示されます。
mailto著者のメールアドレスを指定します。ページフッターに表示される著者名またはメールアドレスの mailto リンクになります。
imageイメージファイルを siteurl からの相対パスで指定します。指定された値は OGP プロパティ og:image に設定されます。指定を省略すると og:image は出力されません。

Markdownファイルに定義できる変数

ブログサイトでは 1 つの Markdown ファイルが 1 つの記事に対応します。

変数     説明
date記事の日付を yyyy-mm-dd の形式で指定します。
title記事のタイトルを指定します。
description記事の説明を指定します。
categories記事のカテゴリーを指定します。複数のカテゴリーを指定する場合は全体を [ ] で囲み 各カテゴリーを , で区切ります。カテゴリーに日本語を使う場合は末尾に (...) で英数字のみの表記を繋げてください。これはカテゴリーページの URL として使用されます。たとえば プログラミング(programming) と記述するとカテゴリー名が プログラミング カテゴリーページの URL programming になります。すべての記事でカテゴリー URL を明示する必要はありません。1 つの記事で プログラミング(programming) というカテゴリー指定がされていれば 他の記事では プログラミング というカテゴリー指定だけでも構いません。自動的にカテゴリー URL programming になります。新しいカテゴリーを初めて使うときは (...) でカテゴリー URL を定義する と覚えておくと良いと思います。カテゴリー名が半角英数字のみの場合も (...) を省略できます。たとえば カテゴリー名が Java の場合に Java(java) と書く必要はありません。Java と書くだけで自動的にカテゴリー URL java になります。自動的に小文字への変換がおこなわれます
thumbnail記事のサムネイル画像を記事ファイル .md からの相対パスで指定します。指定を省略した場合 thumbnail.(png|webp|jpg|gif) が検索され見つかればそれを使用します。見つからなければさらに image.(png|webp|jpg|gif) を検索し見つかればそれを使用します。それでも見つからなければ 記事中で最初に出現する画像を使用します。
imageOGP プロパティ og:image に設定される画像を記事ファイル .md からの相対パスで指定します。指定を省略した場合 image.(png|webp|jpg|gif) が検索され見つかればそれを使用します。見つからなければ 記事中で最初に出現する画像を使用します。ここに指定した画像は はてなブックマーク Twitter Facebook 等の SNS から参照されるときに使われます。
draft変数 draft を定義すると この記事が作成中であることを示します。変数名 draft が定義されていればよいので値は指定しなくても構いません。作成中の記事がある場合 Catalpa は作成中の記事のみを処理するようになります。これは処理時間を短縮するのに効果的です。変数 draft の値を skip にすると その記事はスキップされ Catalpa の処理対象となりません。作成中の記事を保留してブログサイト全体を出力したい場合に skip が役に立ちます。

自動的に定義される変数

変数     説明
baseurlベース URL が相対パスで格納されます。ルートフォルダーに配置した Markdown ファイルで ${baseurl} を参照した場合 値は空文字になります。ルートフォルダーの sub フォルダーに配置した Markdown ファイルで ${baseurl} を参照した場合 値は ../ になります。たとえば ${baseurl}img はどの階層に配置された Markdown ファイルから参照してもルートフォルダーの img を指し示します。
pathページの ルートフォルダーを基準とした 相対パスが格納されます。この値は URL エンコードされていません。Freemarker の組み込み機能 ?url_path を使うことで URL エンコードされた文字列を参照できます。先頭に / スラッシュ は含まれません。${siteurl} と連結することでページの URL を表わすことができます。${siteurl!}/${path!?url_path}
urlページの URL が格納されます。${siteurl!}/${path!?url_path} と同等の値が格納されています。この値は URL エンコードされています。
dateModifiedページの最終更新日が格納されます。入力ソースとなった Markdown ファイル テンプレートファイル CSS ファイルの中で最も新しい日付が最終更新日となります。テンプレートファイルや CSS ファイルを書き換えると それを参照している複数のページの最終更新日付が更新されることに注意してください。ページに表示する最終更新日を明確にコントロールしたい場合は ${dateModified} を参照せずにユーザー定義の変数を参照するようにテンプレートを書き換えてください。
contentLastModifiedページコンテンツの最終更新日が格納されます。入力ソースとなった Markdown ファイルの日付が格納されます。テンプレートファイルや CSS ファイルを書き換えてもこの日付は影響を受けません。
_PREVIEWCatalpa のローカルサーバー機能でプレビューしていることを示すフラグです。プレビュー時は true になります。名前を付けて保存 するときは false になります。