dspace - Dspace Advance 搜索 XMLUI 自定义
解决方案
您将需要在发现 XML 文件中添加一个新方面。
定义刻面
<bean id="searchFilterType" class="org.dspace.discovery.configuration.HierarchicalSidebarFacetConfiguration">
<property name="indexFieldName" value="type"/>
<property name="metadataFields">
<list>
<value>dc.type.*</value>
</list>
</property>
<property name="facetLimit" value="10"/>
<property name="sortOrderSidebar" value="COUNT"/>
<property name="sortOrderFilterPage" value="COUNT"/>
<property name="splitter" value="::"/>
</bean>
添加新构面后,您可以添加到过滤器列表中,也可以选择添加到侧边栏构面中。
搜索过滤器
<property name="searchFilters">
<list>
<ref bean="searchFilterTitle" />
<ref bean="searchFilterAuthor" />
<ref bean="searchFilterSubject" />
<!-- Add new facet -->
<ref bean="searchFilterType" />
<ref bean="searchFilterIssued" />
<ref bean="searchFilterContentInOriginalBundle"/>
</list>
侧边栏方面(如果需要)
<property name="sidebarFacets">
<list>
<ref bean="searchFilterAuthor" />
<ref bean="searchFilterSubject" />
<!-- Add new facet -->
<ref bean="searchFilterType" />
<ref bean="searchFilterIssued" />
<ref bean="searchFilterContentInOriginalBundle"/>
</list>
在 XMLUI 中,您必须在 i18n/messages.xml 文件中为新的分面标头提供翻译。
<!-- MAKING DSPACE YOUR OWN WEBNINAR ADDITIONS -->
<message key="xmlui.ArtifactBrowser.AdvancedSearch.type_type">Type</message>
<message key="xmlui.ArtifactBrowser.SimpleSearch.filter.type">Type</message>
<message key="xmlui.Discovery.AbstractSearch.type_type">Type</message>
此外,以下演示文稿描述了如何将类型方面添加到 DSpace 集合。
https://gitpitch.com/DSpace-Labs/DSpace-rel-demo/webinar?grs=github#/10
推荐阅读
- regex - 如何允许单词之间有空格?
- python - 我是否在此脚本中正确计算数组比较?
- python - 使用 Tkinter 按钮更改变量
- javascript - 为什么我添加新功能时以前的功能不起作用?我怎样才能解决这个问题?
- sql-server - 最高值和最低值查询报告的实体比较
- swift - 如何过滤相等的字符串并只获取每个字符串
- php - 用户登录后从数据库中显示合适的网页信息
- python-3.x - 'ValueError: int() base must be >= 2 and <= 36, or 0' 为什么?
- android - 加载数据时如何使文本视图模糊
- flutter - 在 Flutter 应用程序中为每个屏幕设置不同的方向会导致大量延迟