> テンプレートとは?テンプレートとは?
- テンプレートを利用して効率的に記事を投稿することができます。
- esaではチーム作成時に、下記の3種類の初期設定のテンプレートが予め用意されています。
- "Templates/" という特殊なカテゴリの中に作られた記事は、テンプレートとして利用することができます。
- 例外として、次のいずれかの場合はテンプレートとして扱われません
- 記事名が
README
から始まる場合(大文字小文字問わず) - 記事をWIPで保存している場合
- 記事名が
- 例外として、次のいずれかの場合はテンプレートとして扱われません
- テンプレートは既存のものを自由にカスタマイズしたり、新たに作ったりすることができます。また、日付やユーザー名などを変数で埋め込むこともできます。
> 初期設定のテンプレート初期設定のテンプレート
> 日報日報
> 議事録議事録
> 手順書手順書
> テンプレートを使った記事の作成手順テンプレートを使った記事の作成手順
実際にテンプレートを使った記事の作成手順について解説します。ここでは初期設定のテンプレートから「日報」を例に解説します。
- 左上メニューの ① "NEW POST" ボタンをクリックして、新規記事作成画面を開きます。
- ② "Select Template" をクリックすると、利用できるテンプレート一覧が表示されます。
- テンプレート一覧から③ "日報" を選択します。
- テンプレートが適用された状態で、記事投稿ができます。
- このとき、記事タイトルには下記のように今日の日付と自分のスクリーンネームが自動的にセットされます。
(この仕組については「テンプレート変数」の項で後述します。)
- このとき、記事タイトルには下記のように今日の日付と自分のスクリーンネームが自動的にセットされます。
- 記事内容を編集して投稿します
> テンプレートを作る・カスタマイズするテンプレートを作る・カスタマイズする
- テンプレートは自由に作成したり、既存のテンプレートをカスタマイズしたりできます。また、日付やユーザー名などをカテゴリ、タイトルや本文に変数として埋め込むことも可能です。
- 作成したテンプレートは、チームで利用することができます。
> テンプレートの元記事についてテンプレートの元記事について
- テンプレートとして活用できる「元記事」は、普通の記事と同じようにチーム内の1記事として存在し、また普通の記事と同じように作成や編集ができます。
- "Templates" というカテゴリの中に初期設定のテンプレートの元記事が用意されています。
- 下記は「日報」テンプレートの元記事の様子です。
> テンプレートの作り方テンプレートの作り方
- 上記の元記事と同様に、"Templates/" カテゴリの中に作られた記事は、テンプレートとして利用することができます。
> ユーザー名や日付などを変数にする(テンプレート変数)ユーザー名や日付などを変数にする(テンプレート変数)
- 前述した日報などのテンプレートに見られるように、テンプレートには投稿者自身のスクリーンネームや投稿日の日付などを、変数でカテゴリ、タイトル、本文に自由に埋め込むことができます。
> 利用できるテンプレート変数利用できるテンプレート変数
テンプレートでは以下の変数を利用することができます。
上記で紹介した例の他にも、日付や曜日、ユーザーの名前等、様々な書式の変数が用意されています。
変数 | 効果 |
---|---|
%{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}
や %{month}
など、時間に関係する全てのテンプレート変数は、以下のような記述で日付をずらすことが出来ます。
※: 例として2018/03/14 (水) の場合
記法 | 結果 | 補足 |
---|---|---|
%{day} |
14 | 本日の日 |
%{day:+2d} |
16 | %{day} を2日後の時点で評価 |
%{day:=mon} |
12 | %{day} を今週の月曜日の時点で評価 |
詳しくはこちら: ProTip/2018/03/14/テンプレート変数の拡張
> 応用編応用編
> ユーザー個人用のテンプレートを作るユーザー個人用のテンプレートを作る
チーム全体で利用できるテンプレートの他、ユーザー個人専用で使えるテンプレートも作ることができます。
Users/[screen_name]/Templates/
カテゴリ配下に記事を置くと、そのscreen_nameの人だけに表示されるテンプレートになります- 例:
Users/fukayatsu/Templates/日報/%{Year}/%{month}/%{day}/TITLE
- 例:
> 特定のカテゴリ配下にテンプレートを適用して記事を作成する特定のカテゴリ配下にテンプレートを適用して記事を作成する
特定のカテゴリ配下の 「Create a new post here」 ボタンで記事を新規作成するときに、カテゴリ名が一致する フロー タイプのテンプレートが用意されていれば、そのテンプレートが自動的に新規作成画面に適用されます。
例えば、以下のテンプレートがあったします。
Templates/カテゴリ1/YYYY/MM/DD/テンプレートA
Templates/カテゴリ1/サブカテゴリ1/YYYY/MM/DD/テンプレートB
この場合、以下のように、カテゴリ名が前方一致し、かつフロー型のテンプレートが用意されている場合、自動的に記事作成画面に適用されます。
- 「カテゴリ1」 配下で新規記事作成 → テンプレートA が自動適用
- 「カテゴリ1/サブカテゴリ2」 配下で記事作成 → テンプレートB が自動適用
> 例)「ProTip」カテゴリ配下に記事を作るときのテンプレートの適用方法例)「ProTip」カテゴリ配下に記事を作るときのテンプレートの適用方法
- 「ProTip」カテゴリ配下用にテンプレートを予め用意しておきます。
- 「ProTip」カテゴリ画面右上の "Create a new post here" ボタンを使って新規記事を作ります。
- すると、先に用意したテンプレートが適用された状態で、新規投稿画面を開くことができます。
> 特定のテンプレートが適用された状態で新規投稿できるURL特定のテンプレートが適用された状態で新規投稿できるURL
https://[チーム名].esa.io/posts/new?template_post_id=[記事番号]
にアクセスすると、その記事番号のテンプレートが適用された状態で新規投稿画面を開くことができます。- この機能はchatbotを使う場合や、READMEにリンクを埋め込む場合に便利です。
chatbot
@here 日報書きましょう! https://example.esa.io/posts/new?template_post_id=3
README.md
...
[議事録を書く](/posts/new?template_post_id=5)
...
> APIからの利用APIからの利用
POST /v1/teams/:team_name/postsのパラメータに、テンプレートの記事番号を指定することでAPIからテンプレートを適用することも可能です。