How do I search on indexed mixin values

Enonic version: Enonic XP 6.7.2
OS: OSX

I have installed the SEO Meta Fields App to specify SEO metadata. I would like the internal Enonic search to be able to search these fields, but I’m running into problems.
The metadata show up in the content viewer like this:

"x": {
    "com-enonic-app-metafields": {
      "meta-data": {
        "seoTitle": "Tittelen til Kundeservice liksom",
        "seoDescription": "Ja, her kommer beskrivelsen til kundeservice",
        "blockRobots": false
      }
    }
  }

I try to add the following to the search query:

OR fulltext('x.com-enonic-app-metafields.meta-data.seoTitle^2', 'Tittelen~1', 'OR')

… also with the camelCase variation:

OR fulltext('x.comEnonicAppMetafields.metaData.seoTitle^2', 'Tittelen~1', 'OR')

Unfortunately I don’t get any hits on this.
What can I do to make this work?

Hi.

At the moment, the x-data fields are not fulltext-indexed since it in most cases (at least that was the thought) would clutter up the indices with data that you probably didnt want to search for.

You can do normal search-expressions like ‘x.com-enonic-app-metafields.meta-data.seoTitle’ LIKE “Tittel*” etc

On the other hand, I see your point about being able to use the standard fulltext and ngram-functions. So for next version all string-based valuetypes in x.data will be made available for the fulltext/ngram-functions. They will NOT be included in the collection field “_all_text” to avoid interfering with your content-data.

Also; In future versions, the possibility to define own index-schemes are planned.

2 Likes