首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kentico 9搜索结果转换

Kentico 9搜索结果转换
EN

Stack Overflow用户
提问于 2017-02-28 19:30:43
回答 1查看 129关注 0票数 0

我们在看法语搜索结果时注意到了一个bug。在CMS办公桌上,我保留了法语内容的英文页面名称。问题是,这些都显示在法国的结果页面上。

在基于默认转换的转换中,我呈现如下可点击的标题:

代码语言:javascript
复制
<a href='<%# SearchResultUrl() %>' data-type="title" target="_blank" ><%#SearchHighlight(HTMLHelper.HTMLEncode(CMS.ExtendedControls.ControlsHelper.RemoveDynamicControls(DataHelper.GetNotEmpty(Eval("Title"), ""))), "<span class='highLight'>", "</span>")%></a>

下面是我的想法,如果菜单标题被填好了,请使用它而不是标题。如何在不调整菜单页类型的搜索字段的情况下输出DocumentMenuCaption?

我认为我的逻辑是,检查DocumentMenuCaption是否是emtpy,如果它使用,使用标题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-28 19:57:17

您应该能够继续使用GetNotEmpty并首先传入DocumentMenuCaption,如下所示:

代码语言:javascript
复制
<%# GetNotEmpty(GetSearchValue("DocumentMenuCaption");Eval("Title")) %>

您可能需要也可能不需要"GetSearchValue“函数,但这允许您从对象中获取在搜索结果的默认列集中不可用的值。

或者,您应该能够使用IfEmpty()方法:

代码语言:javascript
复制
<%# IfEmpty(GetSearchValue("DocumentMenuCaption"), Eval("Title"), GetSearchValue("DocumentMenuCaption")) %>

从这里采取的两种转换方法(对"GetNotEmpty“进行双重检查语法,因为实现方法不同:https://docs.kentico.com/k9/developing-websites/loading-and-displaying-data-on-websites/writing-transformations/reference-transformation-methods )

您可以在这里阅读有关搜索转换的更多信息:https://docs.kentico.com/k9/configuring-kentico/setting-up-search-on-your-website/displaying-search-results-using-transformations

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42517226

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档