我有这个 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/

10-09 15:52