Discourseでリンクを使って新しいトピックを作成する方法、またはトピックが存在する場合にそこに誘導する方法

ニュースレターには、厳選された外部リソースへのリンクを掲載しています。各アイテムの横に「議論する」リンクを追加し、Discourse インスタンス内の対応するトピックへ誘導したいと考えています。これにより、ニュースレター読者がクリックしてコメントし、他者と交流できるようにしたいのです。

以前、Compose a new pre-filled topic via URL で紹介されていたテクニックを試しました。具体的には、/new-topic?title=<url> という形式のリンクを使用する方法です。しかし、この方法では毎回新しいトピックが作成されてしまい、意図する動作とは異なります。

トピックが存在しない場合は「新規トピック」コントローラーを表示し、既に存在する場合は既存のトピックへ訪問者を誘導するリンクを実現したいのです。Discourse でこのようなことは可能でしょうか。

よろしくお願いいたします。

申し訳ありませんが、他のユーザーがサポートを探す際に検索で見つけやすくなるよう、トピックのタイトルをより説明的に変更しました。

これにはいくつかのロジックが必要となるため、カスタム機能の構築が必須となります。それがテーマコンポーネントかプラグインかについては現時点では断定できませんが、どちらのアプローチがより適切かを確認するため、さらに調査を行うことをお勧めします。

Discourse のコードベースはまだ詳しくありませんが、PR を送る場合、既存の /new-topic ルートに新しいパラメータを追加しても問題ないでしょうか?それとも、この機能をプラグインに分離することを推奨されますか?

申し訳ありませんが、いいえ。

/new-topic は新しいトピックを意味します。

新しいトピックのルートがパラメータに基づいて返信を生成すると、混乱を招く可能性があります。

この方法がご要望に合わない場合は、プラグイン内でルートをご自身のニーズに合わせて変更してください。