Discourseテンプレート

|||
|—|—|—|
|:discourse2: | 概要 | Discourse Templates は、コンテンツテンプレートを作成して繰り返し使用できるようにする機能です。テンプレートは特別なカテゴリのトピックとして保存され、必要に応じて編集および議論できます。|
|:open_book: | インストールガイド | このプラグインは Discourse のコアに含まれています。プラグインを個別にインストールする必要はありません。

:information_source: このプラグインは、Discourse Canned Replies の新しいバージョンにほぼ相当しますが、より柔軟で、テンプレートの保存方法が異なります。

特徴

このプラグインは、テンプレートを保存するために 1 つ以上のカテゴリを使用します。これらのカテゴリ内の各トピックの最初の投稿が、返信のテンプレートとして使用されます。

このアプローチにより、discourse-canned-replies で利用可能だったよりもはるかに多くの機能が提供されます。各テンプレートには編集履歴があり、関連付けられたタグを持つことができ、必要に応じて後続の投稿をテンプレートの内容の議論に使用できます。

表示されているトピックのみがテンプレートとして使用されるため、リストにないトピックやアーカイブされたトピックはリストに表示されません。

プラグインは、カテゴリのセキュリティ設定を活用して、どのユーザーがテンプレートを使用できるかを確認します。ユーザーがカテゴリ内のトピックを読み取ることができる場合、「テンプレートの挿入」オプションがコンポーザーで使用可能になります。ユーザーは、アクセス権のあるカテゴリ内のテンプレート/トピックのみを表示できます。

複数の親カテゴリやサブカテゴリを使用して、異なるユーザーグループに異なるテンプレートセットを提供し、テンプレートを整理できます。

プライベートテンプレート

プラグインはプライベートテンプレートもサポートしています。プライベートテンプレートは、テンプレートとしてタグ付けされたプライベートメッセージです。これらのメッセージは、メッセージの作成者 のみ がテンプレートとして利用できます。

アーカイブされたメッセージはテンプレートとしてリストされません。

:bulb: すべてのプライベートテンプレートは、次の場所で見つけることができます。
/u/{ユーザー名}/messages/tags/{プライベートテンプレートタグ}

設定:

  • discourse templates enabled: プラグインをアクティブにします。
  • discourse templates categories: テンプレートを保存するために使用されるカテゴリ。これらのカテゴリとそのサブカテゴリ内の各トピックはテンプレートとして使用され、元のカテゴリでそれらを見ることができるユーザーが利用できます。
  • discourse templates enable private templates: プライベートテンプレートの使用を有効にします。
  • discourse templates groups allowed private templates: プライベートテンプレートの使用が許可されているユーザーグループ。

:warning: スタッフメンバーは常に許可されます。

  • discourse templates private templates tags: プライベートメッセージをテンプレートとしてマークするために使用されるタグ。

使用方法

プラグインをインストールしたら、テンプレートを保存するためのカテゴリを少なくとも 1 つ作成する必要があります。

このカテゴリ内のトピックを読む権限を持つすべてのユーザーが、コンポーザーでプラグイン機能を使用できることに注意してください。

:bulb: プロのヒント: カテゴリ内のテンプレートを編集できるユーザーは、カテゴリ設定で「新しいトピックをデフォルトでウィキにする」を有効にした場合と同じ設定が適用されます。

その後、プラグイン設定でカテゴリを指定します。

これで完了です。指定されたカテゴリにいくつかのトピックを作成すると、テンプレートとして利用できるようになります。

必要に応じて、テンプレートをより整理したり、複数のユーザーグループに異なる返信セットを提供したりするためにサブカテゴリを作成できます。

テンプレートを挿入するには、まず返信コンポーザーを開き、追加ボタンをクリックして、「テンプレートの挿入」オプションを選択する必要があります。

目的のテンプレートを選択します。テキストまたはタグで検索し、「貼り付け」アイコンをクリックできます。

キーボードショートカット
PC では Ctrl+Shift+I、Mac では +Shift+I を使用してテンプレートを挿入できます。

:bulb: キーボードショートカットは、Discourse の任意のテキストエリアで機能します。

プライベートテンプレート

:warning: プライベートテンプレートは、プライベートメッセージとタグの両方が有効になっているインスタンスでのみ機能します。

機能が動作するようにするには、次の Discourse 設定を構成する必要があります。

  • tagging enabled: 有効にする必要があります。
  • enable personal messages: 非スタッフユーザーが機能を利用できるようにしたい場合は有効にする必要があります。
  • pm tags allowed for groups: プライベートメッセージにタグを付けることを許可するグループを許可する必要があります。

プライベートテンプレートを使用するには、まず設定で有効にし、使用できるユーザーグループを割り当て、PM をテンプレートとしてマークするための少なくとも 1 つのタグを割り当てる必要があります。

個人用テンプレートを作成するには、ユーザーは次の手順を実行する必要があります。

  • プラグイン設定で構成されたタグのいずれかでタグ付けされた、自分自身への暗号化されていない個人用メッセージを送信します。メッセージの作成者のみ がそれをプライベートテンプレートとして表示できます。

:bulb: 他のユーザーに送信されたプライベートメッセージにもタグを付けることができますが、メッセージの作成者のみがそれをテンプレートとして使用できます。

事前定義された変数

プラグインは、テンプレートで次の変数をサポートしています。

  • my_username
  • my_name
  • topic_title
  • topic_url
  • original_poster_username
  • original_poster_name
  • reply_to_username
  • reply_to_name
  • last_poster_username
  • reply_to_or_last_poster_username

上記のすべての変数は、フォールバックテキストをサポートしており、フォールバックが指定されておらず、変数を置き換えることができない場合は、変数が削除されます。

タイトルと本文の両方で変数置換がサポートされています。

例:

Hi %{reply_to_username,fallback:there},

...

Regards,
%{my_name}

reply_to_username が利用できない場合、テンプレートは次のようになります。

Hi there,

...

Regards,
Arpit Jalan

discourse-canned-replies からの移行

既存の定型返信をテンプレートに移行するための rake タスクがあります。

rake "discourse-templates:migrate-from-canned-replies"

Meta で 47 件の定型返信を移行するのに数秒しかかからなかったので、大量の定型返信がない限り、安全に使用できるはずです。

TODO

  • コンポーザー以外の場所でも機能を利用できるように拡張する :white_check_mark:
  • 複数の親カテゴリをテンプレートソースとして使用できるようにする :white_check_mark:

変更履歴

「いいね!」 44

機能リクエストはどこで行うのが適切でしょうか?関連するGHリポジトリのイシュートラッカーが無効になっているようです。返信を「インライン」、つまり文の途中に貼り付ける機能が欲しいです。以前の別のプラグインでもこの機能をリクエストしたことがあり、その際には(好意的な)議論があったようですが、それを見つけることができませんでした。

私は、文の途中に例えばGitHub Issueを含めるような返信を頻繁に作成する必要があります。

  • 新機能として[〇〇]をリクエストしたい場合は、GitHub Issueを開いてください。
  • [〇〇]は文書化が不十分です。GitHub Issueを開いて可視性を高めるのが適切でしょう。
  • [〇〇]の動作はバグのようです。GitHub Issueに詳細を記載して開いてください。

このようなスニペットを多数持っており、ユーザーサポートフォーラムで常に使用しています。

一般的に、テンプレートを現在のカーソル位置に正確に挿入できるようにしたいです。テンプレートが改行で挿入され、その上にさらに改行が入ってしまうと、それを手動で削除してカーソル位置に戻す必要があり、それが毎日何度も発生するのは非常に面倒です。返信はできるだけ速く入力したいのです。

さらに良いのは、マウスやメニュー操作を一切使わずに、テキストのみで挿入できる方法です。

Featuretemplates タグを付けてトピックを作成できます。

「いいね!」 4

投稿が新しいトピックに分割されました:広告ページを作成する

3件の投稿が新しいトピックに分割されました:「テンプレートリストの読み込みに5〜10秒かかります」 [/t/template-list-takes-5-10-seconds-to-load/283361]

:partying_face: このプラグインは、Bundling more popular plugins with Discourse core の一部として、Discourse コアにバンドルされるようになりました。セルフホストでこのプラグインを使用している場合は、次回のアップグレード前に app.yml から削除する必要があります。

「いいね!」 2

テンプレートは、フォーラムへの登録を試みる応募者に対して、定型的なメール返信のリストを作成するのに役立ちますか? 登録中に提供された情報に基づいて応募者を拒否する必要がよくありますが、その理由を伝え、再応募する場合に変更が必要な点についての提案も必要です。私が求めているのは、「拒否理由」フィールドに挿入できる定型返信のドロップダウン選択です。
この目的のためにテンプレートを使用する方法を見つけることができませんでした。

Discourse を介して応答を送受信していますか?

ツールバーが表示されない多くの入力フィールドでは、キーボードショートカット ctrl + shift + i を使用してテンプレートを使用できます。

「いいね!」 3

はい、承認されなかったユーザーを削除する際に、「なぜこのユーザーを拒否するのか」フィールド経由で送信します。

それは良いですね!

キーボードショートカットを覚える(私の場合は月に一度しか使われず、したがって忘れられるでしょう)よりもさらに良いのは、各空白フィールドに関連付けられた小さなボタンで、テンプレートのサブダイアログをトリガーすることです。

はい、そのボタンは公式の投稿通知やユーザーノートなどの作成にも役立ちます。

通常、サイドバーのキーボードショートカットヘルプを使用するか、「insert template」を覚えるようにしましたが、ドイツ語で「i」で始まる適切な単語が見つからなかったので、あまりうまくいきませんでした。