我有这个 XSLT 文件,我用它来翻译来自类别 RSS 提要(即 this one )的 Wordpress 文章。大多数情况下,一切都按应有的方式工作,期待何时我尝试使用 xsl:value-of
获取“content:encoded”元素的值。当我使用以下代码时,没有返回任何内容。是否有我遗漏的东西,或者“内容:编码”中的冒号是否弄乱了 XSLT?
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:dc="http://purl.org/dc/elements/1.1/" version="1.0"
exclude-result-prefixes="dc">
<xsl:output method = "html" omit-xml-declaration="yes" />
<xsl:param name="limit"></xsl:param>
<xsl:param name="hide">none</xsl:param>
<xsl:template match="/">
<xsl:for-each select="rss/channel/item">
<xsl:variable name="link" select="link"/>
<xsl:element name="a">
<xsl:attribute name="href"><xsl:value-of select="link"/></xsl:attribute>
<xsl:value-of select="title" disable-output-escaping="yes"/>
</xsl:element>
<br />
<xsl:value-of select="content:encoded" />
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
非常感谢。
最佳答案
最终发现冒号正在做时髦的命名空间事情。愚蠢的WordPress。所以我最终使用 *[name()='content:encoded']
而不仅仅是 content:encoded
。
关于xml - 无法抓取内容的值(value) :encoded from Wordpress RSS,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9775754/