1

我正在使用具有以下内容模型的 Crafter 2.5.10

页面 -> 包括文件和组件(文件组件)

文件组件 -> 还包括其他文件

我需要针对文件元数据执行给定关键字的搜索(Solr 查询),即,如果我搜索“Potato”并且我有一个 PDF 文件,其中包含“Potato”一词,结果将是匹配。当我得到上述查询的结果时,我需要该文件所在页面的信息(包括)。

使用 SearchAttachmentWithExternalMetadataPostProcessor 我可以获取直接包含在页面中的文件的元数据。但是对于包含在文件组件中的文件,我只获得来自包含该文件的组件的信息。

有没有办法合并文件的元数据+父组件+父页面组件

4

1 回答 1

1

如果您想要在单个 Solr 文档中与文件 + 文件内容本身关联的页面 XML + 组件 XML 之类的东西,这是不可能的,因为在索引时无法访问提取的文件内容,提取由 Solr 完成,并且与页面完全分离索引。

我认为您基本上有两个选择:在执行第一次查询后搜索与组件/文件关联的页面,或者创建一个处理器,在索引组件/文件时添加一些页面元数据。

于 2017-12-13T21:49:43.847 回答