esaでは、投稿テンプレートを自由に作成・編集することができ、日報や議事録など繰り返し使う記事の作成を効率化できます。
ここではテンプレートの作成方法やテンプレート変数の使い方、応用的な使い方について解説します。
テンプレートの基本的な使い方についてはこちらで解説しています。
テンプレートは、通常の記事と同様に作成・編集が可能な1つの投稿です。テンプレートとして機能させるには、記事を "Templates/" カテゴリ配下に置く必要があります。
README で始まるタイトルの記事はテンプレートとして扱われません(大文字・小文字を問わず)| "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
Templates/ 配下に存在していること以下のようなテンプレートが登録されているとします:
Templates/カテゴリ1/YYYY/MM/DD/テンプレートATemplates/カテゴリ1/サブカテゴリ1/YYYY/MM/DD/テンプレートBこのとき、新規記事を作成するカテゴリに応じて、以下のようにテンプレートが自動適用されます:
| 新規投稿カテゴリ | 適用されるテンプレート |
|---|---|
カテゴリ1 配下 |
テンプレートA |
カテゴリ1/サブカテゴリ2 配下 |
テンプレートB |
より深いサブカテゴリが一致するテンプレートが優先されます。カテゴリ階層が一致しているかが重要です。
次の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)
...
POST /v1/teams/:team_name/posts のパラメータにテンプレート記事IDを指定すると、API経由でテンプレートを適用できます。
esaでは、投稿テンプレートを自由に作成・編集することができ、日報や議事録など繰り返し使う記事の作成を効率化できます。
ここではテンプレートの作成方法やテンプレート変数の使い方、応用的な使い方について解説します。
> [!TIP]
> テンプレートの基本的な使い方についてはこちらで解説しています。
> - [#7: help/投稿テンプレートを使った記事の書き方](/posts/7)
# テンプレートの元記事について
テンプレートは、通常の記事と同様に作成・編集が可能な1つの投稿です。テンプレートとして機能させるには、記事を **"Templates/"** カテゴリ配下に置く必要があります。
> [!WARNING]
> - `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}` を今週の月曜日の時点で評価 |
> [!TIP]
> 詳しくはこちらもご覧ください: [#254: ProTip/テンプレート変数の拡張](/posts/254)
# 個人用テンプレートの作成
自分専用のテンプレートを作成する場合は、`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 |
> [!TIP]
> より深いサブカテゴリが一致するテンプレートが優先されます。カテゴリ階層が一致しているかが重要です。
# URLからテンプレート付き投稿を開始する
次のURL形式で、テンプレートが適用された状態で新規投稿画面を開くことができます:
```
https://[チーム名].esa.io/posts/new?template_post_id=[記事番号]
```
例:`https://example.esa.io/posts/new?template_post_id=3`
これは README などに埋め込んだり、Chatbot から共有する用途に便利です。
```chatbot
@here 日報書きましょう! https://example.esa.io/posts/new?template_post_id=3
```
```README.md
...
[議事録を書く](/posts/new?template_post_id=5)
...
```
# APIでテンプレートを使う
`POST /v1/teams/:team_name/posts` のパラメータにテンプレート記事IDを指定すると、API経由でテンプレートを適用できます。
---
> [!TIP]
> - このページは「[投稿テンプレートを使った記事の書き方](/posts/7)」の続きです。基本的な使い方についてはそちらをご覧ください。
> - テンプレート変数の拡張については、詳しくはこちらもご覧ください: [#254: ProTip/テンプレート変数の拡張](/posts/254)
esaでは、投稿テンプレートを自由に作成・編集することができ、日報や議事録など繰り返し使う記事の作成を効率化できます。
ここではテンプレートの作成方法やテンプレート変数の使い方、応用的な使い方について解説します。
テンプレートの基本的な使い方についてはこちらで解説しています。
テンプレートは、通常の記事と同様に作成・編集が可能な1つの投稿です。テンプレートとして機能させるには、記事を "Templates/" カテゴリ配下に置く必要があります。
README で始まるタイトルの記事はテンプレートとして扱われません(大文字・小文字を問わず)| "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}/titleTemplates/ 配下に存在していること以下のようなテンプレートが登録されているとします:
Templates/カテゴリ1/YYYY/MM/DD/テンプレートATemplates/カテゴリ1/サブカテゴリ1/YYYY/MM/DD/テンプレートBこのとき、新規記事を作成するカテゴリに応じて、以下のようにテンプレートが自動適用されます:
| 新規投稿カテゴリ | 適用されるテンプレート |
|---|---|
カテゴリ1 配下 |
テンプレートA |
カテゴリ1/サブカテゴリ2 配下 |
テンプレートB |
より深いサブカテゴリが一致するテンプレートが優先されます。カテゴリ階層が一致しているかが重要です。
次の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)
...
POST /v1/teams/:team_name/posts のパラメータにテンプレート記事IDを指定すると、API経由でテンプレートを適用できます。