几天前我问了this关于如何在项目视图中显示语言标签而不是ISO版本的问题。如何在侧边栏及其搜索过滤器中应用这些?我找不到用于在侧边栏构面中生成显示值的xslt。
在上图中,我想将显示的值更改为:
English (5325)
French (432)
Chinese (8)
Khmer (5)
Japanese (2)
然后,当点击法语的侧边栏构面时,搜索过滤器中的显示值应为Language Equals French
,而不是下图(Language Equals fr
):
提前致谢。
我尝试了什么
我不知道这是否是最有效的方法,所以任何建议都会受到赞赏。
<xsl:template
match="dri:list[@n='language']/dri:item/dri:xref/text()
| dri:list[@id='aspect.discovery.SidebarFacetsTransformer.list.language']/dri:item/text()
| dri:div[@id='aspect.discovery.SearchFacetFilter.div.browse-by-language-results']/dri:table/dri:row/dri:cell/dri:xref/text()">
<xsl:apply-templates select="*[not(name()='head')]"/>
<xsl:variable name="language">
<xsl:value-of select="substring-before(.,' (')"/>
</xsl:variable>
<xsl:for-each select=".">
<xsl:value-of select="concat(util:isoLanguageToDisplay($language),' (', substring-after(.,'('))"/>
</xsl:for-each>
</xsl:template>
我的侧边栏中的dc.language.iso的语言标签现在可以在主页和搜索结果中正确显示。
点击View More
:
我现在唯一的问题是:
我不知道如何覆盖高级搜索过滤器,或者甚至可以这样做。