DiscourseのRSSフィードを見つける方法

:bookmark: Discourseで利用可能なすべてのRSSフィード包括的なリファレンスガイド。URL構造、認証要件、およびフィードリーダーのベストプラクティスを含みます。

:person_raising_hand: 必要なユーザーレベル: すべてのユーザー

RSS (Really Simple Syndication) は、コンテンツをサイトやプラットフォーム間で容易に共有できるようにする標準化されたコンピュータ可読形式です。Discourseは、トピック、投稿、カテゴリ、タグ、ユーザー、およびグループの幅広いRSSフィードを提供しています。

:information_source: 安定したURL: ID(例:カテゴリID、トピックID、バッジID)を含むRSSリンクは、そのIDによって定義されます。URLの「スラッグ」(URLのテキスト部分)が変更されてもリンクは壊れませんが、スラッグはURLパスで必須です。

例えば、以下のリンクはすべて同じRSSフィードに繋がります:

  • https://meta.discourse.org/t/events-plugin/69776.rss
  • https://meta.discourse.org/t/a-random-slug/69776.rss
  • https://meta.discourse.org/t/-/69776.rss

バッジ

特定バッジのフィードを取得します。
https://meta.discourse.org/badges/[id]/[badge_name].rss

カテゴリ

特定カテゴリの最新トピックのフィードを取得します。
https://meta.discourse.org/c/[category_slug]/[id].rss

カテゴリとタグ

特定のカテゴリに属し、かつ特定のタグを持つトピックのフィードを取得します。

:exclamation: 重要: 標準的なカテゴリフィードとは異なり、カテゴリ+タグのフィードは /c/ ではなく /tags/ パス配下にホストされます。

正規URL(推奨): 安定性のためにタグの数値IDを使用します。
https://meta.discourse.org/tags/c/[category_slug]/[id]/[tag_slug]/[tag_id]/l/latest.rss

レガシーURL: タグ名のみを使用します。
https://meta.discourse.org/tags/c/[category_slug]/[id]/[tag_name]/l/latest.rss

注: latesttophotnewunread などの他のフィルターに置き換えることができます。

グループ

グループアクティビティのフィードを取得します。/groups//g/ の両方のプレフィックスが機能します。

メンション: グループが言及されたトピック。
https://meta.discourse.org/groups/[group_name]/mentions.rss
または
https://meta.discourse.org/g/[group_name]/mentions.rss

投稿: グループメンバーによって行われたすべての投稿。
https://meta.discourse.org/groups/[group_name]/posts.rss
または
https://meta.discourse.org/g/[group_name]/posts.rss

投稿(グローバル)

サイト全体のすべての公開投稿のフィードを取得します。
https://meta.discourse.org/posts.rss

タグ

特定のタグを持つトピックのフィードを取得します。

正規URL(推奨): 安定性のためにタグの数値IDを使用します。
https://meta.discourse.org/tag/[tag_slug]/[tag_id].rss

レガシーURL: タグ名のみを使用します。
https://meta.discourse.org/tag/[tag_name].rss

トピック

トピックリストのフィードを取得します。

ホットトピック: 現在トレンドにあるトピック。
https://meta.discourse.org/hot.rss

トップトピック(期間別): 特定の期間で最も人気のあるトピック。
https://meta.discourse.org/top.rss?period=[period]
ここで [period] は以下のいずれかです:allyearlyquarterlymonthlyweeklydaily

:information_source: 従来の期間別のURL(例:top/yearly.rss)も機能しますが、上記のクエリパラメータ形式にリダイレクトされます。

トップトピック(デフォルト): サイトのデフォルトの期間を使用します。
https://meta.discourse.org/top.rss

最新トピック: 最新のアクティビティ(返信)があるトピック。
https://meta.discourse.org/latest.rss

:warning: フィードリーダーでの安定した順序付け: デフォルトでは、「最新」は最後の返信の時刻で順序付けられます。これにより、誰かが古いトピックに返信するたびに、フィードリーダー内のアイテムの順序が変更されます。トピックが作成された時刻に基づく安定した時系列の順序を取得するには、?order=created を追加します:
https://meta.discourse.org/latest.rss?order=created

単一トピック: 特定の単一トピックのフィード。
https://meta.discourse.org/t/[topic_slug]/[id].rss

ユーザー

特定のユーザーのアクティビティのフィードを取得します。/users//u/ の両方のプレフィックスが機能します。

投稿: ユーザーによって行われたすべての投稿。
https://meta.discourse.org/users/[username]/activity.rss
または
https://meta.discourse.org/u/[username]/activity.rss

トピック: ユーザーによって作成されたトピック。
https://meta.discourse.org/users/[username]/activity/topics.rss
または
https://meta.discourse.org/u/[username]/activity/topics.rss

認証済みフィード

以下のフィードには、ログインしているかAPIキーを提供する必要があります。これらはコンテンツのパーソナライズされたビューを提供します。

  • 未読トピック: まだ読んでいないトピック。
    https://meta.discourse.org/unread.rss
  • 新しいトピック(個人): 前回の訪問以降、あなたにとって新しいトピック。
    https://meta.discourse.org/new.rss
  • 既読トピック: すでに読んだトピック。
    https://meta.discourse.org/read.rss
  • 投稿済みトピック: あなたが作成したトピック。
    https://meta.discourse.org/posted.rss
  • ブックマーク: ブックマークしたトピック。
    https://meta.discourse.org/bookmarks.rss

:information_source: /new.rss に関する注意: URL /new.rss は、公開された未認証ユーザーには存在しません。「新規」ビューはあなたのアカウント履歴に固有です。作成日順に並べられた公開トピックフィードが必要な場合は、/latest.rss?order=created を使用してください。

一般的な問題と解決策

問題: /new.rss で「ページが見つかりません」または404エラー

  • 原因: このフィードはログインしているユーザーのみ利用可能です。
  • 解決策: 公開された時系列フィードには /latest.rss?order=created を使用するか、ログインしていることを確認してください。

問題: フィードアイテムがリーダーで順序変更される

  • 原因: デフォルトの latest フィードは最後の返信時刻でソートされます。
  • 解決策: URLに ?order=created を追加して、トピック作成時刻でソートします。

問題: カテゴリ+タグのフィードが機能しない

  • 原因: /c/ プレフィックスを使用している。
  • 解決策: URLが /tags/c/ で始まっていることを確認します(例:https://site.com/tags/c/category-slug/1/tag-slug/2/l/latest.rss)。

よくある質問

Q: 検索クエリ用のRSSフィードを作成できますか?
A: いいえ、Discourseは検索クエリのRSSフィードをネイティブにはサポートしていません。コンテンツをフィルタリングするにはタグまたはカテゴリを使用する必要があります。

Q: なぜカテゴリフィードに時々「このページはプライベートです」と表示されるのですか?
A: カテゴリが特定のグループやユーザーに制限されている場合、RSSフィードも制限されます。フィードを表示するには、適切な権限を持ってログインしている必要があります。

Q: RSSフィードはキャッシュされますか?
A: はい、Discourseはパフォーマンスを向上させるためにRSSフィードを1分間キャッシュします。

「いいね!」 25

新しいものには特定の理由で機能しないのですか?:thinking:

どういう意味ですか?「新しい」は最新という意味ではありませんか?

いいえ、実際には違いがあります。

  • 最新 = 最新の返信があるトピック

新規は異なります。

  • 新規 = 最新の返信に関係なく、最も新しいトピック

URLを比較してください。

  • /latest - ここで: “latest.rss” が機能します

対して:

  • /new しかし new.rss は機能しません
「いいね!」 3

じゃあ、これは#contribute:bugと見なせるかな。

「いいね!」 2

報告しましたか、それとも私が報告すべきですか?

はい、お願いします。私も状況を見失っていました。

「いいね!」 3

バグレポートと、興味深い追加の議論はこちらです: Missing rss feed which corresponds to "new" topics

「いいね!」 1

Google検索で、トピックやキーワードの検索に基づいてRSSフィードを作成する方法を探していました。\n\nどうやらそれは不可能のようで、タグ、スラッグ、カテゴリが機能しない場合、他にどのような選択肢がありますか?\n\nたとえば、特定のタグが含まれるカテゴリのRSSフィードを作成する方法もないようです。\n\n/c/[category_slug]/[tag]/[id].rss\n\nカテゴリ内のタグ付きトピックや投稿のフィードを取得できないようです。\n\nエンジニアリングスタッフがトピックをより迅速に集約できるように、FreshRSSのボイラープレートフィードセットを作成していますが、これは大きなギャップのようです。\n\n何かアイデアはありますか?よろしくお願いします!

「いいね!」 1

openrss.org の PrivacyGuides Discourse 検索フィードを購読しています。

https://openrss.org/discuss.privacyguides.net/search?q=brave+browser+order%3Alatest_topic

これは次の RSS フィードです。

しばらく経ち、なぜ機能するのか思い出せません。Open rss は Privacy Guides フォーラムを特別にサポートしているだけかもしれません。しかし、コードはすでに存在するため、彼らは任意の Discourse フォーラムをすぐにサポートできるはずです。

Discourse が標準で提供するまで役立つ可能性があります。

これは私たちにはうまくいきません。なぜなら、SSOで保護されたプライベートなDiscourseがあり、ネットワーク外に公開できないからです。

openrss.orgというサイトは、上記でリンクされたページをビルド/レンダリングするのに約7分かかります。そして、彼らはフィードをカスタムフィードとして構築したようで、Discourse自体に組み込まれているものではありません。

わかりました。しかし、ウェブページが読み込みに7分かかるということはありません。リクエストはそれよりもずっと前にタイムアウトするはずです。7秒ということでしょうか?私の場合、最初に生成されたときはページの読み込みに数秒かかりますが、最初の読み込み後は(少なくとも私のウェブブラウザでは)速いようです。

読む

保存された検索を使用すれば機能する可能性があるという印象を持っています。

いいえ、リンクを使用してopenrss.orgに接続/リクエストしてからフィードコンテンツがページに表示されるまで、文字通り7分かかりました。

これは、保存された検索および保存された検索から派生したフィードを容易にするために、サーバーサイドプラグインをインストールする必要があるように見えます。それは私たちにとって開始不能であり、残念ながら、私たちのDiscourseインスタンスでは保存された検索は許可されていません。

それはあまり意味がありません。私はソフトウェアエンジニアであり、ウェブサイトが応答するのに7分かかることは決してありません。サーバーはそれよりも前にタイムアウトします。ウェブサイトと私が送信したフィードは、私にとってはかなり速く読み込まれます。:person_shrugging:

「いいね!」 1

Discourse Meta - Latest posts が機能し、有効な RSS フィードであるにもかかわらず、同じ RSS フィードが私の Discourse サイトの 1 つでページが見つかりませんとなり、他の 2 つの Discourse サイトではエラーが発生しないのはなぜか、何か考えはありますか?動作しないサイトで変更した可能性のある設定はありますか?よろしくお願いします。

すべてのインスタで同じバージョンを使用していますか?それらの間でプラグインまたはテーマコンポーネントの違いはありますか?

はい、サイト間でいくつかの違いがある可能性があります。テストするには、プラグインを 1 つずつ無効にする必要があります。

まずは Using Safe Mode to troubleshoot issues with themes and plugins を試してみてください。これにより、テーマやプラグインに問題があるかどうかを確認できます。その後、他のシステムと異なるプラグインのみを無効にしてください。

(このディスカッションは Support… に属します)

「いいね!」 1