Create IndexableXXXQuery classes (based on Craft ElementQueries) to get rid of the following methods:
getIndexableElementModels()
getIndexableEntryModels()
getIndexableAssetModels()
getIndexableProductModels()
getIndexableElementsQuery()
getIndexableEntriesQuery()
getIndexableAssetQuery()
getIndexableProductQuery()
They should have:
- a static
find()
method that return a new instance of the XXXQuery class with prepopulated parameters (blacklisted sections, status, non-empty URL…) one()
&all()
instance methods to getIndexableElementModel
instances
isEntryIndexingEnabled
: defaults totrue
, allows to disable the indexing of entriesisAssetsIndexingEnabled
: defaults totrue
, allows to disable the indexing of assetsisProductsIndexingEnabled
: defaults totrue
, allows to disable the indexing of productsisDigitalProductsIndexingEnabled
: defaults totrue
, allows disabling the indexation of digital productsblacklistedProductTypes
: defaults to[]
, allows disabling indexation of the product typesblacklistedDigitalProductTypes
: defaults to[]
, allows disabling indexation of the given digital product types
blacklistedEntryTypes
: must include the handle of the section (e.g.section:entryType
) as entry type handles are only unique in a given sectioncontentExtractorCallback
: Use an event insteadelementContentCallback
: Use an event insteadresultFormatterCallback
: Use an event insteadextraFields
: Use an event instead