How to make your Wix CMS content searchable
Recipes, listings, team members, portfolio items: when your content lives in CMS collections, it often goes missing from site search. Here's why, and three ways to fix it.
What Wix Site Search can and can't find
According to Wix's help center, Wix Site Search covers static pages, dynamic pages and pages with dynamic content, along with store products, blog posts, events, bookings and forum posts. It can't search:
- pages hidden from search engines
- dataset content set to "fetch after load"
- secondary languages in Wix Multilingual
- embedded HTML and iframes, galleries and images
- elements connected to a Document field, such as PDFs
- private member pages
So CMS content can be searchable with Wix's own app, as long as it reaches visitors on a dynamic page that Wix can index.
Option 1: Fix what Wix Site Search can't see
- The dynamic page is hidden from search engines. Open the dynamic item page's SEO settings in the editor and check that search engines may index it. If you'd rather keep those pages out of Google, open the Search Results page settings instead and turn on Show hidden pages (SEO) under Show on Search, which lets visitors find pages hidden from search engines.
- The dataset loads its items after the page loads. Wix Site Search can't see content a dataset fetches after load. Check the dataset's settings and load the items with the page.
- The items only appear in a repeater on a regular page. Without a dynamic item page there's no page per item to link to. Create a dynamic item page for the collection, so each item has its own URL.
- The text is in a second language, a PDF or an image. None of these are searchable with Wix Site Search.
- The page is for members only. Private member pages are left out of public search on purpose.
- The site hasn't been republished. Search covers the published site. Publish, wait a few minutes and search again on the live site.
Option 2: Build a CMS search with Velo
If you'd rather search one collection on its own page, Velo can filter a dataset as the visitor types. Add a text input and a repeater connected to a dataset, then add page code like this (replace the field keys with your own):
import wixData from 'wix-data';
$w.onReady(() => {
$w('#searchInput').onInput(() => {
const term = $w('#searchInput').value.trim();
$w('#dataset1').setFilter(
wixData.filter().contains('title', term)
.or(wixData.filter().contains('description', term))
);
});
});
This searches one collection at a time and only finds fields that contain what was typed, with no allowance for typos. You maintain the code, and every other collection needs its own query.
Option 3: A search app that reads your collections
Findbar reads your CMS collections through Wix's API instead of crawling the pages, so the dataset's loading setting and the page's SEO settings make no difference to it. CMS items show up in the suggestions under the bar as visitors type, next to your products, blog posts and pages.
- A collection is searchable when anyone has read permission and it has a dynamic item page, which is where each result links.
- You choose the collections in your Wix dashboard under Apps → Findbar, in "What to search".
- Findbar indexes the item's title (the collection's display field) and its text fields.
- Adding, editing or deleting an item updates search, usually shortly afterwards, and a nightly check picks up anything missed.
- Collections that only members can read are never indexed. To keep specific items out of search, add their URL path under Exclude pages in the dashboard.
CMS search is part of Findbar Pro ($9.99 a month or $99 a year), which you can try free for 14 days. The free plan searches products and pages on sites with up to 500 items. Install it from the Wix App Market, then follow the setup guide.
Want your collections in the search bar? Findbar searches CMS items next to your products, posts and pages, with suggestions under the bar as visitors type. Try Pro free for 14 days. See it in the Wix App Market.
Add Findbar to Wix, free