Discourseをコミックレビュー/ディスカッションプラットフォームとして使用する

Discourse が適切な媒体であるかどうかわからない、少し特殊なユースケースがあります。

約 5000 ~ 7000 のコミックに関するディスカッション プラットフォームをホストしたいと考えています。ただし、1 つのコミックの下にすべてのディスカッションを置きたくありません。同じコミックの下でさまざまなトピックのディスカッションを追跡するのが難しいためです。そのため、「カテゴリ」を各コミック用に作成し、その下に個別のトピックを作成できると考えました。さらに、これがサーバーとクライアントの両方に負荷をかける可能性があると読みました。

ナビゲーションは問題ではありません。各コミックには一意の識別子があり、コミュニティ メンバーはそれを認識しているため、誰もカテゴリを閲覧することはありません。ユーザーは識別子を入力するだけでカテゴリを見つけることができます。

同様の機能を実現するより良い方法はありますか?タグを使用すると役立ちますか?

「いいね!」 1

端的に言うと、はい、それが最善の方法です。

「いいね!」 1

各投稿でタグの使用を強制できますか?理想的には、フォーラムにはコミックに属さないものは何も含まれるべきではありません。

「いいね!」 1

カテゴリ - タグの設定を表示します。

「いいね!」 3

プログラムでタグを自動入力することはできますか?タグごとにトピックを作成するというアイデアがありましたが(タグを作成する唯一の方法だと思います)、トピックをプロシージャルに生成する方法についてはあまり情報が見つかりませんでした。

私のボードゲームコミュニティでは、まさにそれを行っています。ボードゲームがデータベースに追加された(または名前が変更された)ときには、タグと2つのカスタムトピックが作成/更新されます。

記憶が正しければ、これを担当していたとき、単一のタグを作成するための特定のAPIエンドポイントはありませんでした(トピック作成時に新しいタグを追加することはできますが)。しかし、バッチタグアップロードを使用してこれを実行することができました。

以下のようなものです。

const formData = new FormData();
formData.append("file", Buffer.from("the-tag-name,an-optional-tag-group"), {
  contentType: "text/csv",
  filename: "tags.csv",
});
const { data } = await axios.post(`${process.env.DISCOURSE_URL}/tags/upload.json`, formData, {
  headers: {
    ...formData.getHeaders(),
    "Api-Key": process.env.API_KEY,
  },
});
「いいね!」 2

わかりました、tags.csvがどのように見えるか見せていただけますか?

「いいね!」 2

タググループのタグが必須であり、実質的にカテゴリの代わりとしてトップレベルの構造として使用される類似のユースケースを調査していました。

現在、タグはその名前のみがデータ属性に格納されています。タググループも属性に格納されていると、UXでタググループを区別できるようになるため、非常に便利です。

編集:機能リクエストを投稿しました:Add a data-tag-group attribute for tags

「いいね!」 1

申し訳ありませんが、多くの質問をしてしまいますが、タグとトピックに関連する別の機能についてお伺いします。

トピックを特定のタグに「ピン留め」することは可能ですか?そうすれば、タグが選択されたときに、トピックリストで最初に表示されるのはピン留めされたトピックになりますか?

デフォルトのピンモーダルからトピックをタグにピン留めすることはできません。私が知っている2つのオプションがあります。

  • タグには説明があり、tag banners componentで表示できます。
  • かなり前に、任意のパスでトピックをレンダリングできるコンポーネントを作成しました。試すことができます: Topic Banners component
「いいね!」 2

2番目のオプションはまさに私が探していたソリューションのようです。APIを介して、これらのバナートピックをタグごとにプログラムで設定することは可能ですか?

どうすればいいかわかりません。一点気になったのは、レンダリングが少し遅いように見えることです。開発者ではないので、その理由を説明したり理解したりすることはできませんが、すべてのページで使用するとフォーラムの動作が遅くなる可能性があります。

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.