To display CMS Collection item details in a popup instead of navigating to a separate page, you need to use a combination of Collection Lists, Interactions, and a hidden detail modal inside the same page. Here's how to set it up.
1. Set Up Your CMS Collection List
- Add a Collection List to your page and connect it to your desired CMS Collection.
- Inside each item, include a summary preview (e.g., thumbnail, title).
- Add a button or div that users will click to open the popup.
2. Design the Popup Modal
- Create a div block outside the Collection List. This will serve as your popup/modal container.
- Set this modal to position: fixed, display: none, and z-index: high. Apply a background overlay if needed.
- Inside this modal, add text/image blocks with static elements that will get filled dynamically via CMS data using Webflow's Interactions.
- Include a close button and style as desired.
3. Add CMS Fields Using Custom Attributes or Embed
Webflow doesn't allow binding dynamic CMS content into a popup that's outside the Collection List by default. You can work around this by:
- Adding custom attributes (like
data-name, data-description, etc.) to the popup trigger inside the Collection item. - Alternatively, place hidden text elements inside each CMS item that store the extra info (e.g., description, image URL).
4. Use Webflow Interactions to Open and Populate Modal
- Add a Click interaction to the popup trigger element inside the CMS item.
- In the interaction:
- Set display: flex/block on the modal container.
- Use Element trigger animations (Interaction → Mouse click (tap)).
- To populate the modal:
- You need to use custom JavaScript because Webflow interactions alone can’t dynamically move CMS data into a separate modal. For example:
- On popup trigger click, use JavaScript to fetch the
data-* attributes from the clicked item. - Then inject those values into the modal content fields (e.g., modal title, body, image src).
5. Add a Close Interaction
- Add another interaction to the close button inside your modal to:
- Hide the modal container (set display: none).
- Optionally reset any fields or styles.
6. Optional – Use Finsweet Attributes (No-Code/Low-Code Option)
- If you want a no-code route, check Finsweet’s CMS Load and CMS Filter tools.
- You can dynamically display details in a modal using Finsweet Attributes with minimal code, and they offer documentation for creating dynamic modals from CMS items.
Summary
To open CMS Collection details in a popup instead of a new page, design a separate hidden modal on the same page, trigger it via a CMS-linked button using Webflow Interactions, and pass data from the clicked item using custom attributes or JavaScript. For an easier alternative, consider Finsweet’s Attributes tools.