Guide · Custom development · 6 min read
CMS and dynamic content in Wix Studio Two: data sources, repeaters and item pages
In Wix Studio Two, CMS content reaches your pages through data sources, not datasets. You connect each element to a field, list items with repeaters, and give each item its own URL with an item page. It's quick to set up, but CMS data sources only display data, so anything that saves to a collection needs code.
Key points
- Data sources can be CMS collections, Wix apps or custom code, attached to pages, sections, containers, repeaters, headers or footers.
- Each repeater takes one source, with filters, up to three sorts and items per load.
- Item pages replace dynamic pages; lists use a repeater on any page.
- CMS data sources are read-only, so writing data needs the Data API.
In Wix Studio Two, CMS content reaches your pages through data sources, not datasets. You connect each element to a field, list items with repeaters, and give each item its own page with an item page. It's quicker to set up than the old dataset model. The trade-off is that CMS data sources only display data, so anything that saves to a collection needs code.
What is a data source?
A data source is where an element gets its content. It can be a CMS collection, a Wix app or custom code. Wix Blog, for example, gives you sources for a single post, a list of posts and related posts. Wix creates a source for each CMS collection automatically.
You attach sources to a page, section, container, repeater, header or footer, from the Inspector's Settings tab under + Connect Source. A page's sources reach every section and container on it, with one exception: the header and footer aren't part of the page, so they need their own source. Elements outside a container can't use that container's source.
On the canvas, connected elements show a pink label and static ones show blue, so you can see at a glance what's live data.
How do you connect an element to the CMS?
- Select the element and open the Inspector at the top right.
- Go to the Settings tab and click Connect to data next to the property you want, such as Text, Link or Alt text.
- Choose the source, then the field. Only fields that suit the element appear.
- Fill in any parameters, such as a page link, and click Apply.
For text and images there's a shortcut in the dropdown next to Edit Text or Replace Image. You don't need to attach a source first, either. The editor attaches it for you, usually to the page.
Take care moving elements around. Dragging a connected element into a container without the same source removes its connection. The editor warns you while you drag and offers Undo afterwards.
How do repeaters work?
A repeater shows a list of items from one source. Just one: for two collections, use two repeaters. When you connect a repeater, the editor connects the elements inside it automatically, so check each one picked the right field.
Manage the list from Manage [source name] on the action bar:
- Filter to show only matching items. Several filters must all match.
- Sort by up to three fields. You can't drag items into a custom order, so add a number field and sort by that.
- Items per load sets how many show at once. By default, more load as visitors scroll.
Filters and sorts never change the collection itself. Repeaters come in Cards, List, Slider and Advanced grid layouts.
Two details catch people out. An empty repeater doesn't show on the live site at all, so design a No Items state from the repeater's label if you want a message instead. And a Load More button needs the source on the section, not the repeater, with the button outside the repeater.
What replaced dynamic pages?
Item pages. An item page is one template that shows each item in a collection at its own URL. Add one from Site Structure, Pages, + Add Page, then Collection page. Choose the collection and pick an item page template. Collection page only appears once the CMS has at least one collection.
The URL is a collection prefix plus the item's slug, for example /books/1984. Adding an item page creates an Item slug field. Slugs must be unique and up to 100 characters.
There's no separate list page type. To list items, add a page with a repeater, or put a repeater on any page. To link each item in the list to its page, connect the link with Get Dynamic Link and choose the item page. The item page has to exist first.
Plan your URLs before launch. Changing a prefix or slug breaks links you've already shared, and automatic redirects from the old URL need a custom domain connected first. SEO settings for item pages are set once, for all items.
Can you show or hide content based on a field?
Yes, with conditional visibility under Settings, then Advanced. It hides an element based on a true or false field, including calculated ones. It doesn't work with other field types, and you can't put it on a page or a global section itself, only on elements inside them.
When do you need code for data?
When data has to go into a collection, not just come out of it. CMS data sources are read-only and run in the browser. Wix's developer docs say you need the Data API for saving visitor input from custom forms, advanced queries and aggregations, backend jobs with higher permissions, bulk updates, and combining your data with outside systems. You can use both approaches on the same site.
Studio Two also has no data hooks or routers. Data events, which run after a save and can't block it, take the place of hooks. Dynamic pages take the place of routers. Outside databases can be connected through an adapter you host, but only in code. There's no editor screen for it.
For scale, Wix lists up to 1,000 collections per site and up to 1,000 items per query page.
If you're planning a CMS-heavy site on Studio Two, talk to our Wix development team or see our Wix Studio 2 service. For how dynamic pages work on the older editors, read Dynamic Pages in Wix.
Questions people ask
Are datasets gone in Studio Two?
Yes. Data sources replace them, and item pages replace dynamic pages.
Can a Studio Two site with item pages be exported to code?
Not yet. As of November 2026, Wix says sites with dynamic pages can't be exported, and that covers item pages and pages with a repeater.
Can a header show CMS content?
Yes, but it needs its own data source. The header and footer don't inherit the page's sources.
Sources
- Studio Two Editor: About Data Sources (Wix)
- Studio Two Editor: Adding and Setting Up Repeaters (Wix)
- Studio Two Editor: Adding and Setting Up Item Pages (Wix)
- About the Wix Data Ecosystem (Wix)
- Connect to Data vs. the Data API (Wix)
- About Dynamic Pages (Studio Two) (Wix)
- About External Databases (Studio Two) (Wix)
- Studio Two Coding Features (Wix)
- About Exporting Your Site to Code (Wix)