Skillnad mellan versioner av "Exempel på anpassningar av XSLT-stilmallarna som andra har funnit användbara"

Från Svenska kohanätverkets wiki
Hoppa till navigering Hoppa till sök
(Lagt till tips om Libris-id i detaljvisningen.)
 
Rad 1: Rad 1:
==Visa LIBRIS-ID på en posts detaljsida==
+
==Visa LIBRIS-ID på en posts detaljsida (001)==
 
Koha version: 18.11.06
 
Koha version: 18.11.06
  
Rad 17: Rad 17:
 
   <xsl:value-of select="marc:controlfield[@tag=001]" />
 
   <xsl:value-of select="marc:controlfield[@tag=001]" />
 
</a>
 
</a>
 +
</span>
 +
</xsl:if>
 +
</pre>
 +
 +
==Visa LIBRIS-ID på en posts detaljsida (035$a)==
 +
Koha version: 18.11.04
 +
 +
Av: Andreas Hedström Mace & Per Åberg, Stockholms universitetsbibliotek
 +
 +
<pre>
 +
Det här är en variant av koden ovan, för de bibliotek som inte har LIBRIS-ID i fält 001 utan i 035$a. Eftersom 035 är upprepningsbart, och det kan finnas id:n där filtreras det på inledande "(LIBRIS)". Används istället SE-LIBR behöver det ändras till motsvarande.
 +
 +
<xsl:if test="marc:datafield[@tag=035 and marc:subfield[@code='a' and contains(., '(LIBRIS)')]]">
 +
<xsl:variable name="libris035" select="marc:datafield[@tag=035 and marc:subfield[@code='a' and contains(., '(LIBRIS)')]]/marc:subfield[@code='a']"/>
 +
<span class="results_summary libris">
 +
<span class="label">Libris-ID: </span>
 +
<xsl:value-of select="substring-after($libris035, '(LIBRIS)')" />
 
</span>
 
</span>
 
</xsl:if>
 
</xsl:if>
 
</pre>
 
</pre>

Versionen från 22 november 2019 kl. 17.02

Visa LIBRIS-ID på en posts detaljsida (001)

Koha version: 18.11.06

Av: Hanna Dehlin, Bibliotek och högskolepedagogik, Högskolan Kristianstad - hanna.dehlin@hkr.se

Följande läggs till i XSLT-stilmallen för en posts detaljsida (MARC21slim2intranetDetail.xsl) på den plats där man vill lägga till Libris-ID, vi valde att infoga det efter "Beskrivning". ID:t blir en länk till posten i Libris webbsök. 
OBS! För att anpassningen ska fungera krävs att Libris-ID:t finns i posterna i fält 001.

<xsl:if test="marc:controlfield[@tag=001]">
<span class="results_summary">
<span class="label">Libris-ID: </span>
<a>
  <xsl:attribute name="href">https://libris.kb.se/bib/<xsl:value-of select="marc:controlfield[@tag=001]"/></xsl:attribute>
  <xsl:attribute name="target">blank</xsl:attribute>
  <xsl:attribute name="id">LibrisID</xsl:attribute>
  <xsl:value-of select="marc:controlfield[@tag=001]" />
</a>
</span>
</xsl:if>

Visa LIBRIS-ID på en posts detaljsida (035$a)

Koha version: 18.11.04

Av: Andreas Hedström Mace & Per Åberg, Stockholms universitetsbibliotek

Det här är en variant av koden ovan, för de bibliotek som inte har LIBRIS-ID i fält 001 utan i 035$a. Eftersom 035 är upprepningsbart, och det kan finnas id:n där filtreras det på inledande "(LIBRIS)". Används istället SE-LIBR behöver det ändras till motsvarande.

<xsl:if test="marc:datafield[@tag=035 and marc:subfield[@code='a' and contains(., '(LIBRIS)')]]">
<xsl:variable name="libris035" select="marc:datafield[@tag=035 and marc:subfield[@code='a' and contains(., '(LIBRIS)')]]/marc:subfield[@code='a']"/>
<span class="results_summary libris">
<span class="label">Libris-ID: </span>
<xsl:value-of select="substring-after($libris035, '(LIBRIS)')" />
</span>
</xsl:if>