2011-02-06 19 views
0

PHPで書かれた情報システム用のRSSフィードを作成する必要があります。 私はRSS 2.0仕様やRSSフィードジェネレータの作成に問題はありませんでした。フィードのアイテムは、大量のレコードを含む大きなテーブルからフェッチされるため、このテーブルから必要な情報をすべて取得するまでには時間がかかります。新しい 加入者に5つの最新のアイテムを表示するにはRSS機能の問題

  1. :したがって、次のスキームを実装する必要があります。
  2. 既存のユーザーの場合 には が最後に追加された後に追加されたアイテムのみが表示されます フィード。

私は最初の条件に問題はありません。LIMIT句 を使用して、フェッチされた行の数を制限することができます。このような何か:

$items = function_select(“SELECT * FROM some_table ORDER BY date DESC LIMIT 5); 

しかし、これは次のような問題を作成します。彼らは新しいアイテムを持っているしばらくの間離れてきた後、すでに10までの1からアイテムを読んだことが実際のフィード購読者があると仮定作成されました。例えば、10の新しい項目。

次回のチェックインでは、新しい10個のアイテムをすべて表示することができますが、すべてを一度に見る必要はありません。最後の5つのもの(16から20まで)のみが表示されますが、それらの10つすべては表示されません。 11から15までの項目は省略されます。

この問題を解決するためには、フィードに送信するフラグがあるはずです。たとえば、最後に取得されたアイテムのpubDate。 は同様のものを使用します。しかし、そのリンクは手作りです。どのように別の方法で行うことができますか? ご意見がありましたら教えてください。あなたが何らかの準備ができていれば(どの言語であっても)、私とリンクを共有するだけです。私はそれを大きく感謝します。

ありがとうございます。

答えて

1

標準のRSSフィードは、異なるユーザーに異なるコンテンツを表示しません。彼らは単に常に最新のいくつかのアイテム(たいていは10)を提供し、RSSリーダーを利用して頻繁にポーリングして更新を見逃さないようにします。これをしないと特に魅力的な理由がない限り、これは最も簡単で効果的なメカニズムです。