メールコンテンツのカスタマイズ
JIRA はテンプレートエンジンを使用したイベントに反応して電子メールを生成します。テンプレートエンジンは Apache のVelocity です。これは java オブジェクトを便利な方法で引き離すことができる、比較的使いやすいテンプレート言語です。イベントに対する関連性のオブジェクトのセットを使用して Velocity を呼び出すことで、JIRA 内でメールが生成されます。
注意:
- フィルター サブスクリプションの列を変更するために、メールテンプレートをカスタマイズする必要はありません。
- JRA-7266 にはこの改善に対するよう要求リクエストがあり、この実装のチャンスを改善するよう投票できます。
- 次回 JIRA をアップグレードするとき、または何らかの理由で新しいインストールが必要となった場合は、Velocity テンプレート (および JSP) に加えた変更を手動で JIRA にコピーする必要があります。新しいバージョンで Velocity テンプレートおよび JSP に変更されている場合、カスタマイズをそれらに手動でインポートする必要があります (対照的に、これらのファイルを古い JIRA インストールからアップグレード後のバージョンに直接コピーします)。
Velocity テンプレートやその他の JIRA ファイルのカスタマイズは、アトラシアンサポートの範囲には含まれません。
メール テンプレートの場所
- JIRA ディストリビューションを開き、次のパスに移動します。
- The
WEB-INF/classes/templates/email/
of the<jira-application-dir>
in your JIRA installation directory. - The
jira/src/etc/java/templates/email/
in your extracted JIRA source directory.
- The
- このディレクトリには、
html
、text
、およびsubject
の 3 つのディレクトリがあります。html
サブディレクトリには html 形式でメールを作成するために使用するテンプレートが含まれ、text
ディレクトリにはプレーン テキスト メール出力が含まれます。subject
ディレクトリにはメールの件名を生成するために使用されるテンプレートが含まれます。テンプレートには、メールをトリガーするイベントに関連する名前が設定されます。 - テンプレートを好きなりテキストエディターに取り込みます。「JIRA テンプレートドキュメントn (特に「電子メールテンプレートの Velocity コンテキスト」) および「Velocity ユーザーガイド」を参照し、必要なカスタマイズを行います。
- Jira を再起動します。
新しい電子メールテンプレートの場合:
html
、text
、およびsubject
ディレクトリで、それらのディレクトリ内の既存のファイルに基づき、新しくmytemplate.vm
ファイルを作成します。- テンプレートを
atlassian-jira/WEB-INF/classes/email-template-id-mappings.xml
に追加して、新しいイベントを追加する際に選択できるようにします。
Note that since JIRA 4.1 each new template has to have a corresponding file in the subject
directory.
高度なカスタマイズ
issue オブジェクトは vm
テンプレートに渡されます。これに関連する /includes/summary-topleft.vm
内の複数の実装に注意します。例として、$issue.getProject()
を呼び出すと、課題が所属するプロジェクトを決定し、別のプロジェクトからのメールでは異なる情報を表示するロジックを作成することもできます。
JIRA を再起動せずに Velocity テンプレートを展開する
In a development instance, you can play with picking up velocity file changes without a restart.
From <jira-install>/atlassian-jira/WEB-INF/classes/velocity.properties
:
class.resource.loader.cache
をtrue
からfalse
に変更します。#velocimacro.library.autoreload=true
からコメント記号 (#
) を削除します。
本番でこの変更を行うと「JIRA not serving」ページが表示され、ログファイルに「ran out of parser」エラーが作成されます。
また、「電子メールにカスタムを追加する」も参照してください。