How can I display search filters in a view? I'm working on a site in drupal 8 that uses commerce 2. I'm learning as I go with this and feel like I'm missing something on how everything fits together.

I made a view for products, and configured how products display, and used twig templates to add wrappers and classes etc. This seems to work fine, but when it comes to adding any functionality, Twig doesn't seem to be the place to do it. The config options in Drupal cover layouts and CSS classes but are very complex.

This is confusing when you need to make the markup a certain way. In my case I need to add the following in a horizontal row:


number of results found
Select dropdown to filter results by a taxonomy
Another select for different taxonomy
Free text search box


I need to then style these also so I'd really want to control the markup generated, to some degree. How would I go about implementing this in a view?
Below are some guidelines to setting up each of your requirements in a view. Worth noting, in order to display each in the same row, you'll need to customize the view template to combine the exposed filters and the results count from the view header.


Number of Results Found


In the Header section (middle column) of the View edit page, click ADD. 
If your view has multiple displays, be sure to select whether to apply this to all displays in the view, or just the selected/current one in the FOR section. 
Select "Result summary" and click the ADD AND CONFIGURE HEADER button. 
Edit/customize your results text with the tokens. If you want to still expose the same text pattern if no results are found, check the checkbox "Display even if view has no result" 
Click APPLY






Select dropdowns to filter results by a taxonomy


In the Filter Criteria section (near bottom of left column) of the View edit page, click ADD. 
If your view has multiple displays, be sure to select whether to apply this to all displays in the view, or just the selected/current one in the FOR section. 
Find your custom taxonomy field you wish to filter by. Note, if your field is configured to allow multiple term selection, you'll see two instances of the field listed (the field itself, and the field delta).  Pick the field itself. 
Click APPLY.
If the field is setup to allow taxonomy terms from multiple taxonomies/vocabularies, select the one you wish to show/filter on. Choose the dropdown option to set the filter as a select element. 
Check the checkbox to "Expose this filter to visitors, to allow them to change it" 
Select the "single filter" format and update the field label to reflect the label you'd like the user to see. Keep the operator as "is one of". In the righ column, Leave the list of terms unselected to automatically show all terms in the filter. 
scroll further down the form, and click the REDUCE DUPLICATES option; optionally- click the REMEMBER THE LAST SELECTION option so that users clicking a back button to return to the page will still see the previous selection. 
Finally, click apply to save the filter settings.
If the Auto preview option is enabled, you should now see the select filter in the view preview below the view config section (even if there are no results).  






Free text search box


To setup a free text search box, you'll need to use the "Combine fields filter"; but it can only be applied to search the fields configured in the view. (You can add fields and exclude from display).  If your view is setup to "Show Content", you'll need to click the "Settings" for the view Format and select "Force Using Fields" to add fields to the view for filtering/searching.  
Add the fields for searching (title, body, etc) 
In the Filter Criteria section (near bottom of left column) of the View edit page, click ADD. 
If your view has multiple displays, be sure to select whether to apply this to all displays in the view, or just the selected/current one in the FOR section. 
Find and select the "Combine Fields Filter" and click APPLY. 
Check the checkbox to "Expose this filter to visitors, to allow them to change it" 
Select the "single filter" format and update the field label to reflect the label you'd like the user to see. Change the operator to "Contains". 
scroll further down the form, and click the REDUCE DUPLICATES option; optionally- click the REMEMBER THE LAST SELECTION option so that users clicking a back button to return to the page will still see the previous selection. 
scroll even further down and multiselect the applicable search fields. 
Finally, click apply to save the filter settings.
If the Auto preview option is enabled, you should now see the search box in the view preview below the view config section (even if there are no results). 






Customizing the View Templates


Refer to the "Understanding Views Templates" and "Naming Views Templates" sections of this blog post for a high level rundown of Drupal 8 view templating.
This legacy Views Template listing for Drupal 6 &amp; 7 gives a good rundown of all the various views component templates (view header, view footer, view exposed filters).  Most are still applicable in drupal 8, with the .tpl.php file ending swapped out as .html.twig