我正在使用liferay搜索容器来显示信息列表,但在该liferay搜索容器中默认显示记录的数量,如“显示2个结果”。但在我的情况下,我不想显示这个。我该如何删除?还附上了搜索容器的图像。
欢迎提出建议。
答案 0 :(得分:6)
您可以按照Felix Christy:
的建议使用Javascript执行此操作以下是快速步骤:
转到javascript部分添加以下内容,它与liferay捆绑在一起的Alloy UI javascript框架:
AUI().ready(
function(customA) {
customA.all('.taglib-page-iterator').hide(); // this would hide **all** the elements which have the class "taglib-page-iterator"
}
);
上面的javascript代码可以包含在自定义portlet的JSP本身中(注意我已更改的方法和选择器),如:
<aui:script>
AUI().ready(
function(customA) {
customA.one('#my-portletID .taglib-page-iterator').hide(); // this would hide only **one** element (the first it finds) which has the css class "taglib-page-iterator" under an element with id="my-portletID".
}
);
</aui:script>
通过Hook的另一种可能的解决方案:
你可以创建一个Sandeep Nair所提到的钩子来隐藏结果文本,但是你可以设置一个条件来检查只有当你想要隐藏它的页面的URL或者可以有检查要隐藏此结果文本的特定portlet的条件。
因此它可以正常用于其他页面和portlet,但会隐藏您的页面和您定义的某些portlet。这是一个想法,还没有尝试过,但我认为它会起作用。您可以使用JSP页面上可用的themeDisplay
对象来检索portlet-id。
希望这有帮助。
感谢Felix Christy通过Javascript建议解决方案。
我想把我的评论转换成答案,以便更好地了解这个精彩社区的其他成员。
答案 1 :(得分:4)
这是因为您在搜索容器中使用了页面迭代器。当记录超过默认增量时,上面的消息将被替换为显示-x-of-y-results以及用于导航到下一页的页码和控件。
如果您不想要这个,那么您必须使用hook修改jsp页面。 jsp的名称是shows_x_results.jspf,后面的代码片段就是您要修改的内容。
<c:otherwise>
<c:choose>
<c:when test="<%= total != 1 %>">
<%= LanguageUtil.format(pageContext, "showing-x-results", numberFormat.format(total)) %>
</c:when>
<c:otherwise>
<%= LanguageUtil.format(pageContext, "showing-x-result", numberFormat.format(total)) %>
</c:otherwise>
</c:choose>
</c:otherwise>
答案 2 :(得分:3)
为了删除某个特定页面的字符串,请在页面上放置一个jQuery / javascript,这将隐藏显示该文本的特定div / span。
在这种情况下,它不会显示在该页面上,但它将可用并将在其他地方呈现。
以下是快速步骤:
$('.taglib-page-iterator').hide();
只有在主题中包含了jquery.js时,这才有效。所以请这样做。
答案 3 :(得分:3)
目前,hook(或者如果你想要一个极端的解决方案,则是ext)是你能做到的唯一方法。 覆盖shows_x_results.jspf片段并注释/删除不必要的内容。 可以通过portal-ext.properties配置的唯一“属性”是这些(LR 6.0.5)
#
# Set the available values for the number of entries to display per page. An
# empty value, or commenting out the value, will disable delta resizing.
# The default of 20 will apply in all cases.
#
# Always include 20, since it is the default page size when no delta is
# specified. The absolute maximum allowed delta is 200.
#
search.container.page.delta.values=5,10,20,30,50,75
#
# Set the maximum number of pages available above and below the currently
# displayed page.
#
search.container.page.iterator.max.pages=25
#
# Set this to false to remove the pagination controls above or below
# results.
#
search.container.show.pagination.top=true
search.container.show.pagination.bottom=true
您可以在此处找到最新的(LR 6.1GA)搜索容器属性:http://www.liferay.com/es/documentation/liferay-portal/6.1/user-guide/-/ai/search-container
我不建议将其从客户端隐藏,因为如果您决定升级Liferay安装,它很可能会中断。胡克是一个安全的出路。