Skip to content

Field Resolvers

Built-in Resolvers

The plugin ships with 12 typed field resolvers (plus an attribute resolver for element attributes like title, slug, uri):

Resolver Handles
PlainText Plain Text, Email, URL, Link, Color, Country
RichText CKEditor (auto-detected when craft\ckeditor\Field is present)
Number Number, Range, Money
Date Date, Time
Boolean Lightswitch
Options Dropdown, Radio Buttons, Button Group, Checkboxes, Multi-select
Relation Entries, Categories, Tags, Users
Asset Assets (default: stores asset ID as integer; configurable via mode resolver config)
Address Addresses
GeoPoint Address fields resolved to {lat, lng} coordinates (requires ROLE_GEO assignment)
Table Table
Matrix Matrix (when indexed as a single field rather than expanded sub-fields)
Attribute Element attributes: title, slug, postDate, dateCreated, dateUpdated, uri, status

Matrix Sub-field Expansion

When a Matrix field is detected, the plugin expands it into individual sub-field rows in the field mapping UI. Each sub-field gets its own mapping with a compound index field name (matrixHandle_subFieldHandle), its own field type, weight, and enable/disable toggle. Sub-fields from all entry types within the Matrix are collected and de-duplicated by handle.

Field Type Mapping

Each field is assigned a default index field type based on its Craft field class:

Index Field Type Description
text Full-text searchable content.
keyword Exact-match strings (URLs, slugs, status values).
integer Integer numeric values.
float Floating-point numeric values.
boolean True/false values.
date Date/time values.
geo_point Geographic coordinates.
facet Multi-value fields used for filtering (categories, tags).
embedding Vector embedding field (for semantic/vector search).
object Nested/structured data.

These can be overridden per-mapping in the field mapping UI.