DSpace логотип сообщества - DSpace 6.2 XMLUI - PullRequest
0 голосов
/ 08 мая 2018

Я пытаюсь отредактировать communitylist.xsl , чтобы изменить домашний шаблон для добавления логотипа сообщества, но пока не повезло.

Я использую XMLUI - Mirage2

здесь пример шаблона дома

в: https://www.repository.cam.ac.uk/

Что мне добавить или изменить?

Спасибо.

1 Ответ

0 голосов
/ 08 мая 2018

Наш репозиторий применяет 40 различных логотипов по всей иерархии. Вот как я это сделал.

Установить переменные заголовка на основе дескриптора сообщества / коллекции

<xsl:key name="myancestor" match="/dri:document/dri:meta/dri:pageMeta/dri:trail/@target|/dri:document/dri:meta/dri:pageMeta/dri:metadata[@element='request'][@qualifier='URI']/text()" use="substring-after(.,'handle/')"/>
<xsl:variable name="IS_ZZZ" select="key('myancestor','12345/6789')"/>

    <xsl:choose>
        <xsl:when test="$IS_ZZZ">
            <xsl:call-template name="showLogo">
                <xsl:with-param name="header-logo" select="concat($theme-path,'/images/zzz.png')"/>
                <xsl:with-param name="header-logo-alt">ZZZ</xsl:with-param>
                <xsl:with-param name="header-logo-link">http://zzz.edu</xsl:with-param>
                <xsl:with-param name="header-logo-link-lang">ZZZ Website</xsl:with-param>
            </xsl:call-template>
        </xsl:when>

При обработке элементов заголовка вставьте разметку логотипа

<xsl:template match="dri:div[@n='community-home' or @n='collection-home']/dri:head" priority="3">
    <xsl:call-template name="showLogo">
        <xsl:with-param name="header-logo" select="$header-logo"/>
        <xsl:with-param name="header-logo-link" select="$header-logo-link"/>
        <xsl:with-param name="header-logo-link-lang" select="$header-logo-link-lang"/>
        <xsl:with-param name="header-logo-alt" select="$header-logo-alt"/>
    </xsl:call-template>
</xsl:template>


<xsl:template name="showLogo">
    <xsl:param name="header-logo"/>
    <xsl:param name="header-logo-link"/>
    <xsl:param name="header-logo-link-lang"/>
    <xsl:param name="header-logo-alt"/>
    <xsl:call-template name="renderHead">
        <xsl:with-param name="class">ds-div-head</xsl:with-param>
    </xsl:call-template>
    <div class="gu-theme-logo-div">
    <a>
        <xsl:if test="$header-logo-link">
            <xsl:attribute name="href">
                <xsl:value-of select="$header-logo-link"/>
            </xsl:attribute>
            <xsl:attribute name="title">
                <xsl:value-of select="$header-logo-link-lang"/>
            </xsl:attribute>
        </xsl:if>
        <img class="gu-theme-logo hidden-sm hidden-xs">
            <xsl:attribute name="src">
                <xsl:value-of select="$header-logo"/>
            </xsl:attribute>
            <xsl:attribute name="alt">
                <xsl:value-of select="$header-logo-alt"/>
            </xsl:attribute>
        </img>
        <span class="hidden-md hidden-lg">
            <xsl:value-of select="$header-logo-link-lang"/>
        </span>
    </a>
    </div>
</xsl:template>
...