Lucene索引字段值被剥离所有html标记

Lucene索引字段值被剥离所有html标记,第1张

概述我有一个Lucene索引,其中一个字段映射到Sitecore的富文本字段. 由于此字段值包含共享模板的大多数项目的html内容,因此我希望在获取项目的字段值时返回html内容.但是,我注意到返回的值被剥夺了所有html标签. 我尝试将INDEXTYPE更改为“UNTOKENTIZED”.然而,这并没有解决问题.我知道Lucene这样做是为了允许基于该字段进行搜索.但这不是我的要求,我希望这种行为被 @H_301_4@ 我有一个Lucene索引,其中一个字段映射到Sitecore的富文本字段.

由于此字段值包含共享模板的大多数项目的HTML内容,因此我希望在获取项目的字段值时返回HTML内容.但是,我注意到返回的值被剥夺了所有HTML标签.

我尝试将INDEXTYPE更改为“UNTOKENTIZED”.然而,这并没有解决问题.我知道Lucene这样做是为了允许基于该字段进行搜索.但这不是我的要求,我希望这种行为被覆盖.

@H_301_4@解决方法 这是因为有一个RichTextFIEldReader分配给HTML和富文本字段:

<fIEldReader     fIEldTypename="HTML|rich text"                                         fIEldnameFormat="{0}"    fIEldReaderType="Sitecore.ContentSearch.FIEldReaders.RichTextFIEldReader,Sitecore.ContentSearch" />

在Sitecore 8.1中,它在Sitecore.ContentSearch.Lucene.DefaultIndexConfiguration.config中定义.

它使用HTMLFIEld.GetPlainText()去掉所有标签.

您可以尝试在与< mapFIEldByTypename hint =“raw:AddFIEldReaderByFIEldTypename”>相同的级别添加另一个部分.部分并使用类似的东西:

<mapFIEldByFIEldname hint="AddFIEldReaderByFIEldname">    <fIEldReader         fIEldname="yourFIEldname"        fIEldReaderType="Sitecore.ContentSearch.FIEldReaders.DefaultFIEldReader,Sitecore.ContentSearch" />

按字段名映射的优先级高于按字段类型映射的优先级,因此它将使用为字段指定的fIEldRendered,而不是使用为字段类型指定的字段.

@H_301_4@ @H_301_4@ @H_301_4@ @H_301_4@ 总结

以上是内存溢出为你收集整理的Lucene索引字段值被剥离所有html标记全部内容,希望文章能够帮你解决Lucene索引字段值被剥离所有html标记所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1076252.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存