有没有办法更新旧的RSS Feed项并在Feed阅读器中将其设为“未读”?
我的feed已经通过liferay本身从liferay portlet创建,它只显示了1个项目,因为我只能更新那个,我无法创建新项目/ portlet。
如果我编辑旧的Feed,在谷歌阅读器或Firefox实时书签中它没有显示为未读,即使我刷新并看到新内容,日期仍然是旧的。
我需要一种方法告知读者旧的Feed已更新...是否可以使用一个项目?
答案 0 :(得分:0)
嗯,我认为值得尝试的唯一想法是每次更改项目时都要更改项目的GUID元素。然后试试RSS阅读器将如何反应。
或者使用Atom,如果可以的话。使用Atom,您应该能够这样做,因为它允许您设置上次更新的时间(作为< updated> XML元素)。如果我是对的,RSS无法通知Feed项已更改。它只有< lastBuildDate>在整个饲料上。
答案 1 :(得分:0)
如果您更新了商品,只需在商品中添加guid
元素并将其更改为新的guid。 guid可以是任何唯一的字符串。
<item>
<title>...</title>
<link>Link to your item</link>
...
<guid isPermaLink="false">A unique string</guid>
</item>
请注意,您应该添加属性isPermaLink="false"
,否则会假设guid是一个网址。
&LT; GUID&GT; &lt; item&gt;的子元素
&LT; GUID&GT;是&lt; item&gt;的可选子元素。
guid代表全球唯一标识符。这是一个字符串 唯一标识该项目。如果存在,聚合器可以选择 使用此字符串来确定某个项目是否为新项目。
&lt; guid&gt; http://some.server.com/weblogItem3207&lt; / guid&gt;
guid的语法没有规则。聚合器必须查看 他们作为一个字符串。这取决于建立饲料的饲料来源 字符串的唯一性。
如果guid元素具有名为“isPermaLink”的属性,并带有值 如果是这样,读者可能会认为它是该项目的永久链接, 也就是说,一个可以在Web浏览器中打开的URL,指向 由&lt; item&gt;描述的完整项目元件。一个例子:
&LT; GUID isPermaLink =“true”&gt; http://inessential.com/2002/09/01.php#a2&lt; / guid&gt;
isPermaLink是可选的,其默认值为true。如果它的价值是 错误,guid可能不被认为是网址,也不是任何东西的网址 特别是。