esaでは、投稿テンプレートを自由に作成・編集することができ、日報や議事録など繰り返し使う記事の作成を効率化できます。
ここではテンプレートの作成方法やテンプレート変数の使い方、応用的な使い方について解説します。
テンプレートの基本的な使い方についてはこちらで解説しています。
> テンプレートの元記事についてテンプレートの元記事について
テンプレートは、通常の記事と同様に作成・編集が可能な1つの投稿です。テンプレートとして機能させるには、記事を "Templates/" カテゴリ配下に置く必要があります。
README
で始まるタイトルの記事はテンプレートとして扱われません(大文字・小文字を問わず)- WIP状態(下書き)ではテンプレートとして使えないため、必ず "Ship It!" してください
"Templates"カテゴリページ | テンプレート元記事 |
---|---|
![]() |
![]() |
テンプレート元記事には、画面上部に斜線模様が表示され、他の記事と区別されます。
> テンプレート変数についてテンプレート変数について
テンプレートでは、タイトル・カテゴリ・本文に変数を埋め込むことができます。変数は、投稿時にユーザー情報や日付などに置き換えられます。
例:%{Year}/%{month}/%{day}/%{me}
→ 2025/06/04/taea
> テンプレート変数一覧テンプレート変数一覧
変数 | 効果 |
---|---|
%{year} |
本日の年 (e.g. 14) |
%{Year} |
本日の年 (e.g. 2014) |
%{jyear} |
本日の年度 (e.g. H26) |
%{Jyear} |
本日の年度 (e.g. 平成26) |
%{jfyear} |
本日の会計年度(4月始まり) (e.g. H25) |
%{Jfyear} |
本日の会計年度(4月始まり) (e.g. 平成25) |
%{Year:-3m} |
本日の会計年度(4月始まり) (e.g. 2013) |
%{month} |
本日の月 (e.g. 06) |
%{Month} |
本日の月 (e.g. Jun) |
%{Monthname} |
本日の月 (e.g. June) |
%{Weekday} |
本日の曜日 (e.g. Saturday) |
%{Week} |
本日の曜日 (e.g. Sat) |
%{weekday} |
本日の曜日 (e.g. 土曜日) |
%{week} |
本日の曜日 (e.g. 土) |
%{cweek} |
(当月における)暦週 (e.g. 4) |
%{cWeek} |
暦週 (e.g. 25) |
%{day} |
本日の日 (e.g. 03) |
%{timestamp} |
UNIXタイムスタンプ(秒) (e.g. 1214022600) |
%{Timestamp} |
UNIXタイムスタンプ(ミリ秒) (e.g. 1214022600123) |
%{me} or %{screen_name} |
自分の screen name (e.g. ken_c_lo) |
%{name} |
自分の名前 (e.g. Taeko Akatsuka) |
%{team} |
チーム名 |
%{README} |
README に変換 |
%{} |
空文字列に変換 |
> 日付のずらし・補正日付のずらし・補正
%{day:+2d}
や %{day:=mon}
のように、日付を調整する構文も利用可能です。
記法 | 結果 | 補足 |
---|---|---|
%{day} |
14 | 本日の日(例として2018/03/14 (水) の場合) |
%{day:+2d} |
16 | %{day} を2日後の時点で評価 |
%{day:=mon} |
12 | %{day} を今週の月曜日の時点で評価 |
詳しくはこちらもご覧ください: #254: ProTip/テンプレート変数の拡張
> 個人用テンプレートの作成個人用テンプレートの作成
自分専用のテンプレートを作成する場合は、Users/[screen_name]/Templates/
配下に記事を置いてください。
記事タイトル例:Users/taea/Templates/日報/%{Year}/%{month}/%{day}/TITLE
このようなテンプレートは、該当ユーザーの新規投稿画面にのみ表示されます。
> カテゴリごとのテンプレート自動適用カテゴリごとのテンプレート自動適用
カテゴリ階層に応じてテンプレートを自動適用することができます。
例:
- テンプレート:
Templates/ProTip/%{Year}/%{month}/%{day}/title
- カテゴリ:「ProTip」配下で " + " (このカテゴリに投稿) をクリックすると自動的に適用
> 自動適用の条件自動適用の条件
- テンプレート記事が
Templates/
配下に存在していること - 作成する記事のカテゴリと、テンプレート記事のパスが前方一致していること
- テンプレート記事が フロー型(パスに日付などを含む構造) になっていること
> 例例
以下のようなテンプレートが登録されているとします:
Templates/カテゴリ1/YYYY/MM/DD/テンプレートA
Templates/カテゴリ1/サブカテゴリ1/YYYY/MM/DD/テンプレートB
このとき、新規記事を作成するカテゴリに応じて、以下のようにテンプレートが自動適用されます:
新規投稿カテゴリ | 適用されるテンプレート |
---|---|
カテゴリ1 配下 |
テンプレートA |
カテゴリ1/サブカテゴリ2 配下 |
テンプレートB |
より深いサブカテゴリが一致するテンプレートが優先されます。カテゴリ階層が一致しているかが重要です。
> URLからテンプレート付き投稿を開始するURLからテンプレート付き投稿を開始する
次のURL形式で、テンプレートが適用された状態で新規投稿画面を開くことができます:
https://[チーム名].esa.io/posts/new?template_post_id=[記事番号]
例:https://example.esa.io/posts/new?template_post_id=3
これは README などに埋め込んだり、Chatbot から共有する用途に便利です。
@here 日報書きましょう! https://example.esa.io/posts/new?template_post_id=3
...
[議事録を書く](/posts/new?template_post_id=5)
...
> APIでテンプレートを使うAPIでテンプレートを使う
POST /v1/teams/:team_name/posts
のパラメータにテンプレート記事IDを指定すると、API経由でテンプレートを適用できます。
- このページは「投稿テンプレートを使った記事の書き方」の続きです。基本的な使い方についてはそちらをご覧ください。
- テンプレート変数の拡張については、詳しくはこちらもご覧ください: #254: ProTip/テンプレート変数の拡張