在RSS2.0格式规范中,<description>标记和<content:encoded>标记之间有什么区别?
一个比另一个更重要吗?
我应该在我的提要中同时使用两个,还是一个就足够了?
发布于 2011-09-10 11:49:10
<description>标记用于帖子摘要,但仅在纯文本中使用。没有标记。
如果对标记进行转义或将内容包装在以下内容中,则可以解决此问题:
<![CDATA[ post body goes <strong>here</strong> ]]>但是you're not really supposed to be doing that。
如果你想要标记,你应该使用<content:encoded>,并在这里使用<![CDATA[和]]>包装器。
可以将
content:encoded元素与description元素结合使用,以提供项目的完整内容和较短的摘要。在这种方法下,项目的完整文本用content:encoded表示,摘要用description表示。###RSS Best Practices Profile: content:encoded
简而言之,<description>是为the summary编写的,本文的其余部分是用<content:encoded>编写的。
由于一些读者可能不像预期的那样支持标签,所以您通常会看到<description>中的整个帖子,而不是两者的混合。
发布于 2015-06-04 01:40:37
前面的答案是不正确的。
RSS2.0 spec非常清楚,您可以对元素的值进行编码。
一个项目本身也可能是完整的,如果是这样的话,描述包含文本(允许使用实体编码的超文本标记语言,参见示例),并且可以省略链接和标题。项目的所有元素都是可选的,但必须至少存在标题或描述中的一个。
发布于 2019-02-27 20:25:32
@random给出的答案有一定道理,但最终情况是复杂的(如果不是令人困惑的),正如RSS 2.0 spec中所指定的,当决定如何处理description而不是/或在其他时间与content:encoded一起处理时。
TLDR:当内容生产者愿意同时包含文本摘要和更完整的内容时,情况就清楚了:使用description表示更简单的文本摘要,使用content:encoded表示更完整的html内容。但是当他们只想包含两个中的一个时,只想包含摘要或更完整的内容,那么他们应该使用description标记,在这种情况下,事情仍然是模棱两可的!在我看来,这是一个最不幸的决定,这意味着你必须包含完整的html内容才能让这一点变得清晰,否则,description标签就会一如既往地模棱两可。
不想在提要中使用item摘要的
发布者应该对项目的完整内容使用
description元素,而不是content:encoded,因为它具有最广泛的支持。
使用摘要的出版商应该将摘要存储在描述中,并将完整内容存储在content:encoded中,在item中首先订购description。对于没有摘要的项目,完整内容应存储在description中。
人们不得不慢慢地思考这一切意味着什么,但我认为这些都是外卖要点:
description标签。content:encoded永远不应该在没有description标签的情况下存在于它的旁边(实际上是在它上面)。description)时,情况一如既往地模棱两可:也就是说,description仍然是一个简单的文本摘要,或者是一个更完整的html内容,你不知道!description应该是一个更简单的摘要,而content:encoded将包含更完整的html内容。也许我全看错了。
我个人认为这个决定是非常不幸的。他们这样做显然是为了保持向后兼容性,所以当时的读者将能够始终有一些描述可供阅读(因为content:encoded还没有得到支持,或者还没有得到广泛的支持)。但在这样做的时候,他们基本上阻碍了这一点。现在已经过去了,但我认为他们本可以做的是,在两全其美的情况下,为description添加一个属性,比如:<description type="html | text">。因此,如果<description type="text"> (注意,他们指定content:encoded总是用于更完整的html内容),那么它指定的description只是一个更简单的摘要,生产者也不必为了让读者知道这个标记的类型而提供完整的内容。而年长的读者可能会忽略这个额外的属性。水在桥下,但我们可以梦想。
因此,在我看来,一切都是悬而未决的,**除非*两个标签都包括在内,只有这样你才能做出正确的假设。
备注:关于完整内容和摘要内容的区别,请参阅description标签上的original discussion。
https://stackoverflow.com/questions/7220670
复制相似问题