When making a /searchresults
call to ILSA, you can pass the _order
parameter to configure the returned order of vehicles. Orderings need to be predefined in the Backoffice.
An ordering defines one or more fields to sort on. For example an ordering “price_desc” might sort price from high to low, and break ties by sorting on _mmt
(make model type). If after all your sortings you still have ties, the order is undefined (and might be different from request to request).
You can use _limit
to restrict the number of vehicles returned per call. You can use _offset
to get the results for the second page. For example to render page 3 of your results, you’d pass an offset of 50 (assuming the default _limit
of 25).
You can include _random
in your orderings to have the vehicles shuffled randomly.
If you want to paginate through random results, you’ll need to pass the _sort_seed
parameter with the same value for each request of the same user. You could pass the _session_id
for example. The _sort_seed
is used to shuffle all the vehicles the same way.
If you need two disjunct random sets of vehicles, you can use one _sort_seed
and pass an _offset
to your second request.
The virtual field _score
can also be included in your orderings to sort based on relevance. The _score
field is only effective when the visitor searches using a KEYWORDS or CURVE field.