現在のメンバーからプロパティを取得するマクロを作成しています。プロパティは「複数のテキスト文字列」データ型を使用し、各テキスト文字列にはメディアID、バージョン番号、および追加された日付と時刻が含まれます。
<xsl:output method="xml" omit-xml-declaration="yes"/>
<xsl:param name="currentPage"/>
<xsl:template match="/">
<xsl:if test="count(umbraco.library:GetCurrentMember()/assetDownloads/values/value) > 0">
<ul>
<xsl:for-each select="umbraco.library:GetCurrentMember()/assetDownloads/values/value">
<li>
<xsl:if test="./preview != ''">
<img>
<xsl:attribute name="src">
<xsl:value-of select="./preview" />
</xsl:attribute>
</img>
</xsl:if>
<p><xsl:value-of select="current()"/></p>
</li>
</xsl:for-each>
</ul>
</xsl:if>
</xsl:template>
これにより、次のようになります。
1475,1,28-Dec-12 01:26:45
1475,1,28-Dec-12 01:27:03
最初の値はメディアタイプID、2番目の値はそのバージョン番号、3番目の値はダウンロードされた日時です。
メディアタイプの詳細を表示できるように文字列を分離するにはどうすればよいですか?メディアタイプのプレビュー画像とメディアタイプのnodeNameを表示したいのですが。
誰かがこれで私を助けることができますか?
乾杯、JV
これは、最初の値をプレビュー画像とnodeNameとして表示する方法です。
<!-- First value as preview image and nodeName -->
<xsl:if test="position() = 1">
<img>
<xsl:attribute name="src">
<xsl:value-of select="umbraco.library:GetMedia(., 0)/preview" />
</xsl:attribute>
</img>
<p><xsl:value-of select="umbraco.library:GetMedia(., 0)/@nodeName" /></p>
</xsl:if>