You can filter your search results by boolean. For example, you can filter your search results by in_stock to only show in stock products.
Setup a boolean field
To filter by boolean value, you must first set up a boolean field.
Indexing the following document into Elasticsearch will create a boolean field called in_stock:
{
"in_stock": true
}and your mapping will look like this:
{
"mappings": {
"properties": {
"in_stock": {
"type": "boolean"
}
}
}
}Filter Attribute Configuration
Add a filter attribute to your index configuration. The filter attribute will be used to filter your search results by in stock flag.
{
"filter_attributes": [
{ attribute: 'in_stock', field: 'in_stock', type: 'string' },
]
}Alternatively, you could setup the attribute under facet_attributes to make it available for faceting.
{
"facet_attributes": [
{ attribute: 'in_stock', field: 'in_stock', type: 'string' },
]
}
The attribute name must be unique in both filter_attributes and facet_attributes. If you want to use the same attribute for both filtering and faceting, add it to facet_attributes only.
Using Filter Attributes
You can use the filter attribute in your search query to filter your search results by date within configure.
Syntax Examples
"in_stock:true" # In stock is true