ディスコーステンプレート

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

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

機能

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

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

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

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

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

非公開テンプレート

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

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

:bulb: すべての非公開テンプレートは以下で見つけることができます:
/u/{USER-NAME}/messages/tags/{PRIVATE-TEMPLATE-TAG}

設定:

  • 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: プロのヒント: トピックを編集するための同じ設定が「テンプレート」トピックにも適用されます。カテゴリで書き込みアクセス権を持つ誰でも既存のテンプレートを編集できるようにしたい場合は、カテゴリ設定で Make new topics wikis by default を有効にしてください。

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

それだけです。あとは、指定されたカテゴリにいくつかのトピックを作成するだけで、それらがテンプレートとして使用可能になります。

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

テンプレートを挿入するには、まず返信コンポーザーを開き、エクストラボタンをクリックしてから、「テンプレートを挿入」オプションを選択します。

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

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

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

非公開テンプレート

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

動作させるには、以下の Discourse 設定を設定する必要があります:

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

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

パーソナルテンプレートを作成するには、ユーザーは以下を行う必要があります:

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

: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.

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

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

例:

%{reply_to_username,fallback:there} さん、

...

よろしくお願いします、
%{my_name}

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

こんにちは、

...

よろしくお願いします、
Arpit Jalan

discourse-canned-replies からの移行

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

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

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

TODO

  • コンポーザー以外の場所への機能拡張 :white_check_mark:
  • テンプレートソースとして複数の親カテゴリの使用を許可 :white_check_mark:

変更履歴

「いいね!」 44
Canned Replies by Group
Discobot Type Message Automation
Canned respones location
It would be helpful to be able to use the To: username (in PMs) for Templates
Option to allow Category Moderators to use canned-replies?
Plugin causing errors during rebuild
Canned reply hotkeys?
Poll-restriction
Is it possible to block a category from Upcoming Events?
I'm working to build a "marketplace" on top of Discourse. Would love some suggestions/feedback
Balancing Costs and Functionality in AI-Powered Forums
Canned Replies without extra lines
Canned Replies without extra lines
Exploring Discourse as a Learning Management System
Template Button Relocation
Enforce discourse template by category and /or tag
Give me some control of how the form template post is styled
Can I customize the welcome message shown when creating a new topic based on the chosen tag or category?
Plugin causing errors during rebuild
More efficient (inline) template usage
Will uninstalling a plugin leave any residual debris files in the database?
Build Poll not showing under Post Settings
Feedback on Our Community
How are we all feeling about ChatGPT and other LLMs and how they'll impact forums?
Daily Summary (5am UTC)
General Question About Saved Replies
Using template with a [wrap] code while in Rich Text Editor not working
Bundling more popular plugins with Discourse core
Discourse Category Lockdown
Advice on a support forum
Add the option to insert the component's 'Reply Template' code to the composer's toolbar
Using topic templates for categories
Speak with the Discourse product team about moderation
Templates for Staff Notices
Check boxes and Mandatory fields in Topic templates?
Time tracking using Discourse?
Send a message to an inactive group
Canned Replies without extra lines
Discourse template plugin added itself to my discourse?
Community Guide: Activating Lurkers
Ability to Create Private Templates
Ability to Create Private Templates

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

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

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

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

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

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

Contribute > Feature カテゴリーでトピックを作成し、templates タグを付けてください

「いいね!」 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 を使用してテンプレートを使用できます。

「いいね!」 4

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

それは良いですね!

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

「いいね!」 1

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

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

「いいね!」 2

これらのテンプレートにリンク経由で新しいコンポーザーからアクセスすることは可能ですか?例えば、Creating a link to start a new topic with pre-filled information との互換性などです。