CrafterCMS 编辑蓝图显示了使用分类法进行内容定位。使用文章的 categories_o 字段,我可以分配 0 到 4 个类别。该字段的 Elasticsearch 索引如下所示:
"categories_o" : {
"item" : [
{
"key" : "style",
"value_smv" : "Style"
},
{
"key" : "technology",
"value_smv" : "Technology"
}
]
},
如何搜索具有一个或多个类别的文章?
Liferay 的内置分类框架为类似的字段创建 Elasticsearch 索引,如下所示:
"assetCategoryIds" : [ "644879", "644884", "644889", "6207544", "6207546", "6207550" ],
然后您可以使用 Elasticsearch 查询构造“术语”来搜索属于多个(不仅仅是一个)类别的文档:
"query": { "bool": {
"must": { "match_all": {} },
"filter": {
"bool": {
"must": [
{"terms": {"assetCategoryIds": ["644889","6207550"]}},
...
我正在寻找一种在 CrafterCMS 中进行相同搜索的方法。