RSSポーリングプラグインがアイテムのpubDateを無視する

RSS ポーリングプラグインを使用しています:RSS Polling

どうやら、各アイテムの pubDate を無視しているようです。

これは、以下の観察結果に関連しています:

  1. RSS フィードのすべてのアイテムを取り込んでしまい、最新の x 個のアイテムのみを取得するように指定することができません。

  2. Discourse の投稿日は、アイテムの日付ではなく、インポートされた日付になっています。

  3. 必ずしも正しい順序で投稿されるとは限りません。

  4. 古い RSS アイテムが変更された場合(少なくとも guid が)、新しい Discourse 投稿が作成されます。

  5. 投稿が削除されると、プラグインはそれが存在しなかったかのように再作成します。

正直なところ、これらの問題のほとんどは、フィードを最初に追加する際に関連するものです。

「いいね!」 2

その通りです。pubDate は無視されます。トピックのタイムスタンプは、RSS 投稿が最初に公開された時点ではなく、Discourse でトピックが作成された時点に設定されます。

これを回避する方法があるかどうかはわかりません。Discourse 上にトピックが既に存在するかどうかを判断するには、フィードアイテムの URL(link 属性の値)が使用されます。

これに対する最も簡単な回避策は、削除する代わりにトピックを非表示(unlist)にすることです。そうすれば、再作成されなくなります。

「いいね!」 1

返信ありがとうございます。

プラグインに対して、pubDate に基づいてフィードから最後の n 件のアイテムのみを取得するよう指示すれば、古いアイテムの link が変更されても無視されるようになります。

当初は「埋め込む最大投稿数」がこの目的のためにあると思っていたため(そのため、最初の段階で混乱していました)。

最終的には、この方法で対応しました。

全体を俯瞰して考えると、RSS プラグインは正常に動作していることがわかります。最初の数件のアイテムを除けば、pubDate とトピック作成日は一致するため、フィードの各アイテムごとに新しいトピックを作成しても通常は問題になりません。

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