在 CrafterCMS 中按分类法搜索

问题描述

CrafterCMS 编辑蓝图显示了使用分类法进行内容定位。使用文章的 category_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 查询构造“terms”来搜索属于多个(不仅仅是一个)类别的文档:

"query": { "bool": {
  "must": { "match_all": {} },"filter": {
    "bool": {
      "must": [
        {"terms": {"assetCategoryIds": ["644889","6207550"]}},...

我正在寻找一种在 CrafterCMS 中进行相同搜索的方法。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)