これは、Umbraco ノード (v4.5 より前) の XML 構造のように見えます。
Umbraco ノードのアトリビュートにアクセスするには、次の@
ような記号を使用できます。
<xsl:value-of select="$prdxml/@id" />
<xsl:value-of select="$prdxml/@parentID" />
Umbraco ノードで定義したプロパティにアクセスするには、次のようなものを使用します。
<xsl:value-of select="$prdxml/data[@alias='pass_word']" />
<xsl:value-of select="$prdxml/data[@alias='logo']" />
Umbraco の wiki には、こちらのセクション全体があります。http://our.umbraco.org/wiki/reference/xslt ; XPATH を使用して XML をトラバースする方法の例を示します。
-- コメントに対処するために編集 --
私の XSLT の作業バージョンは次のとおりです。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xsl:stylesheet [ <!ENTITY nbsp " "> ]>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxml="urn:schemas-microsoft-com:xslt"
xmlns:umbraco.library="urn:umbraco.library" xmlns:Exslt.ExsltCommon="urn:Exslt.ExsltCommon" xmlns:Exslt.ExsltDatesAndTimes="urn:Exslt.ExsltDatesAndTimes" xmlns:Exslt.ExsltMath="urn:Exslt.ExsltMath" xmlns:Exslt.ExsltRegularExpressions="urn:Exslt.ExsltRegularExpressions" xmlns:Exslt.ExsltStrings="urn:Exslt.ExsltStrings" xmlns:Exslt.ExsltSets="urn:Exslt.ExsltSets"
exclude-result-prefixes="msxml umbraco.library Exslt.ExsltCommon Exslt.ExsltDatesAndTimes Exslt.ExsltMath Exslt.ExsltRegularExpressions Exslt.ExsltStrings Exslt.ExsltSets">
<xsl:output method="html" omit-xml-declaration="yes"/>
<xsl:param name="currentPage"/>
<xsl:template match="/">
Current Page ID : <xsl:value-of select="$currentPage/@id" />
</xsl:template>
</xsl:stylesheet>
これがページに表示されない理由として考えられるのは、次のとおりです。
<xsl:param name="currentPage" />
XSLT から削除されます。
- XSLT はマクロにバインドされていません。
- マクロはテンプレートに掲載されていません。
- テンプレートがノードに割り当てられていません。
- ノードは公開されていません。