> Portal Navigation: > > - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version. > - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages). > - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`). > - Top-level index of all portals: https://dev.wix.com/docs/llms.txt > - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt # Method name: hasAll(field: string, values: Array) # Method package: wixSearch # Method menu location: wixSearch --> WixSearchBuilder --> hasAll # Method Link: https://dev.wix.com/docs/velo/apis/wix-search/wix-search-builder/has-all.md # Method Description: Refines a search to match documents whose specified field value contains all of the specified values. The `hasAll()` function refines a `WixSearchBuilder` to only match documents where the values of the array in the specified field equal all of the specified values. Matching strings with `hasAll()` is case sensitive, so `"text"` is not equal to `"Text"`. If other filters were previously used in the same `WixSearchBuilder` instance, `hasAll()` is applied using an `and` condition with previously set filters. # Method Code Examples: *** Note: do not assume any prop names or enum values other than the ones in the example. ## Add a has all filter to a search ```javascript let newSearch = search .documentType("Blog/Posts") .hasAll("hashtags", ["vacation", "summer", "fun"]); ``` ## Create a search, add a has all filter, and run it ```javascript import wixSearch from 'wix-search'; // ... wixSearch.search() .documentType("Stores/Products") .hasAll("collections", ["Shirts", "Summer"]) .find() .then( (results) => { if(results.documents.length > 0) { let documents = results.documents; } else { console.log("No matching results"); } }) .catch( (error) => { console.log(error); }); ``` ---