このガイドでは、Discourse のテキストやシステムメールテンプレートをカスタマイズするために使用される補間キーの詳細な概要を説明します。
必要なユーザーレベル:管理者
Discourse 内のテキストのカスタマイズや特定のメールテンプレートのカスタマイズを行う際、一部のテンプレートでプレースホルダー変数が利用可能であることに気づいたかもしれません。
Discourse では、これらを補間キーと呼びます。
補間キーの仕組み
補間キーは、特定の Discourse テンプレートで利用可能なプレースホルダーです。これにより、テキストやメールテンプレートに動的なコンテンツを挿入できます。
Account Created メールテンプレートの補間キーの例:
%{username} や %{site_name} といったこれらのキーは、メールが送信される際に実際のデータに置き換えられます。
一般的に、これらのプレースホルダーは所属するテンプレート内で移動させることができますが、特定のテンプレートでのみ利用可能であり、異なるテンプレートへ移動させることはできません。これらはすべて、対応するテンプレートに紐付いたサーバーサイドのコードによって支えられているためです。
ただし、特定のテンプレートグループでは、デフォルトのテンプレートに既に存在するものに加えて、追加の補間キーを追加することが可能です。
追加の補間キー
ユーザー歓迎システムメッセージ
system_messages.welcome_user テンプレートでは、以下の追加キーを使用できます:
username:ユーザー名
name:ユーザーのフルネーム
name_or_username:ユーザーのフルネームまたはユーザー名のいずれか
これらの値は、SystemMessage クラスによって実行時に提供されます(関連する Discourse コードについては system_message.rb を参照してください)。
ユーザー通知メール
user_notifications および関連するメールテンプレート(unsubscribe_mailing_list や unsubscribe_link などを含む)では、topic_title、username、site_name、url、unsubscribe_url など、多くの追加キーを利用できます。
許可されているすべてのカスタム補間キーの完全な最新リストと、それらが適用されるテンプレートグループについては、Discourse ソースコードの translation_override.rb 内の ALLOWED_CUSTOM_INTERPOLATION_KEYS を参照してください。
「いいね!」 9
gerhard
(Gerhard Schlager)
2
それは正しくありません。現在、それは system_messages.welcome_user のみに有効ですが、他のすべてのキーに拡張することは可能です。これは pr-welcome 対象です。
「いいね!」 4
SaraDev
(Sara Devlaeminck)
3
ご指摘ありがとうございます。ガイドを更新しました。
「いいね!」 2
gassim
(Al-Gassim Sharaf Addin)
4
こんにちは!
これらの補間キーの値はどのように変更できますか?たとえば、%{search_answer} です。
よろしくお願いします!
gassim
(Al-Gassim Sharaf Addin)
5
こんにちは!
このキーは無効であると表示されます。
追伸
メールではなくテキストを置き換えています(違いはありますか)?よろしくお願いします!
Jagster
(Jakke Flemming)
6
それらはグローバルではなく、どこでも無料で利用できるものではないと思います。
「いいね!」 1
gassim
(Al-Gassim Sharaf Addin)
7
@Jagster さん、ありがとうございます!テキストのカスタマイズで使用していますが、トピック投稿によると、機能するはずですよね?
Jagster
(Jakke Flemming)
8
トピックは実際にはメールテンプレートとそのテキストに関するものです。そのため、適切なコンテキスト外で補間キーを使用することはできません。そのため、メール用の他のキー、AIプロンプト用の他のキーなどがあります。
確かに、プラグインは多くのことができますが、今回はすぐに使えるものではありません。
免責事項:私は単なるエンドユーザーであり、ひどく間違っている可能性もあります。しかし、私は自分が正しいと確信しています。だからこそ、あなたの試みはうまくいかないのです🤷♂️
gassim
(Al-Gassim Sharaf Addin)
9
サポートいただき、誠にありがとうございます。メールテンプレートで使用しても機能していないようです。
Jagster
(Jakke Flemming)
10
%{username} は「User did…」テンプレートで使用でき、他のすべてのテンプレートではサポートされないというのが私の予想です。
しかし、明日、すべての専門家が目を覚ましたらわかるでしょう。