0

xslt を使用して動的ギャラリーを作成しようとしており、フォーラムを検索しましたが、同じ問題を持つスレッドが見つからないようです。アイデアは、ユーザーが個々のコンテンツ ページのメディア タブから最大 6 枚の写真を選択できるため、異なるページに異なるギャラリーを配置できるというものです。ファイルは正しく保存され、エラーは発生しませんが、ページを読み込んでも何も表示されません。

xslt

<xsl:if test="$currentPage/image &gt; 0">
    <xsl:variable name="gal1" select="umbraco.library:GetMedia($currentPage/galimg1, false())" />
    <xsl:variable name="gal2" select="umbraco.library:GetMedia($currentPage/galimg2, false())" />
    <xsl:variable name="gal3" select="umbraco.library:GetMedia($currentPage/galimg3, false())" />
    <xsl:variable name="gal4" select="umbraco.library:GetMedia($currentPage/galimg4, false())" />
    <xsl:variable name="gal5" select="umbraco.library:GetMedia($currentPage/galimg5, false())" />
    <xsl:variable name="gal6" select="umbraco.library:GetMedia($currentPage/galimg6, false())" />

    <xsl:if test="not($gal1/error)">
         <xsl:variable name="url" select="$gal1/umbracoFile" />
         <a rel="prettyPhoto [gallery]" href="{$url}">
         <img src="{$url}" />
         </a>
    </xsl:if>
    <xsl:if test="not($gal2/error)">
        <xsl:variable name="url" select="$gal2/umbracoFile" />
        <a rel="prettyPhoto [gallery]" href="{$url}">
        <img src="{$url}" />
        </a>
    </xsl:if>
    <xsl:if test="not($gal3/error)">
         <xsl:variable name="url" select="$gal3/umbracoFile" />
         <a rel="prettyPhoto [gallery]" href="{$url}">
         <img src="{$url}" />
         </a>
    </xsl:if>
    <xsl:if test="not($gal4/error)">
         <xsl:variable name="url" select="$gal4/umbracoFile" />
         <a rel="prettyPhoto [gallery]" href="{$url}">
         <img src="{$url}" />
         </a>
    </xsl:if>
    <xsl:if test="not($gal5/error)">
        <xsl:variable name="url" select="$gal5/umbracoFile" />
        <a rel="prettyPhoto [gallery]" href="{$url}">
        <img src="{$url}" />
        </a>
    </xsl:if>
    <xsl:if test="not($gal6/error)">
        <xsl:variable name="url" select="$gal6/umbracoFile" />
        <a rel="prettyPhoto [gallery]" href="{$url}">
        <img src="{$url}" />
        </a>
    </xsl:if>
</xsl:if>
4

1 に答える 1

0

この問題については、別のルートに行き着きました。画像をメディア タブに追加してからコンテンツ ページから個別に選択するのではなく、これにより、ユーザーはフォルダー全体を選択するだけでギャラリーを作成できます。

<!-- Displays all images from a folder in the Media Library -->
<xsl:if test="number($mediaFolderId)">
    <div class="galleryContainer">
        <xsl:for-each select="umbraco.library:GetMedia($mediaFolderId, true())/Image">
            <xsl:if test="umbracoFile !=''">
                <a href="{umbracoFile}" title="{umbracoDescription}" rel="prettyPhoto [gallery]">
                    <img class="galleryWatermark" src="/images/logo_watermark.png" alt="{@nodeName}" title="{@nodeName}" style="background:url({umbracoFile}) top no-repeat; background-size:180px; width:100%; height:100%;" />
                </a>
            </xsl:if>
        </xsl:for-each>
    </div>
</xsl:if>
于 2014-02-10T18:29:43.223 に答える