jreviews:listing_search_widget.order
Filters the sort order used for the widget live search query. Return a valid order string to override the widget's default result ordering for the current request.
You need to have a working knowledge of Hooks before you get started.
Fires after widget search filters are applied and before the query is sorted
Parameters
| Name | Type | Description |
|---|---|---|
$order |
string |
The current order string, empty by default |
$query |
\FWD\Illuminate\Database\Eloquent\Builder |
The live search listings query builder |
$filterParams |
array |
The normalized live search filter params |
$request |
\FWD\Illuminate\Http\Request |
The current request |
$widgetParams |
mixed |
The widget params object backing the search widget |
$component |
self |
The ListingSearchWidget component instance |
Boilerplate Code
Use the boilerplate code to start using the filter, and add your own logic to modify the first argument and return it.
fwd_add_filter('jreviews:listing_search_widget.order', function($order, $query, $filterParams, $request, $widgetParams, $component)
{
// Your code here
return $order;
}, 20, 6);
The , 20, N after your callback are the hook priority and the number of arguments your callback accepts. By default, a hook passes your callback only its first argument; for a filter, that is the value being filtered, so a simple function($value) { ... } needs nothing extra. If your callback declares more parameters, such as function($value, $listing) { ... }, you must add N (the parameter count, 2 here). Because N is the fourth argument to fwd_add_filter() or fwd_add_action(), you must also pass the priority (20 is the default). Leaving these off when your callback expects extra parameters causes a Too few arguments to function ... fatal error.
Source Files
app/Http/Site/Yoyo/Widget/ListingSearchWidget.php