All questions

How do I map a Strapi dynamic zone to a Croct slot?

Asked by Brett Sandoval on

BSBrett Sandoval

Coming from years of WordPress, so headless is still new to me. Our landing page is built from a Strapi dynamic zone with a handful of components (hero, feature grid, testimonial strip).

I want to personalize just the hero section without restructuring our content types, we spent weeks getting them right. The Croct docs talk about slots but I'm not 100% sure how a slot relates to a dynamic zone component. Do I map the whole zone or individual components inside it?

Was this helpful?

2 answers

OBOwen BlackwoodAccepted answer

You map individual components, not the whole zone. A slot is a context-specific placeholder in your application: it defines where content goes and what type of content can be displayed there. Each slot is bound to one component schema.

So for your case you would create a slot like home-hero, give it a schema that mirrors the fields of your Strapi hero component (title, subtitle, image, CTA), and render it where the hero currently renders. The rest of the dynamic zone keeps rendering straight from Strapi, untouched.

The important part: your existing Strapi content remains the default fallback for the slot. If no experience matches a visitor, they see exactly what your editors published in Strapi. You are adding a layer on top, not moving content.

Was this helpful?
RMRavi Menon

One thing to add: start with the single component you actually want to personalize and leave everything else alone. There is no requirement to map the whole page, and each mapped component is independent. If you later want to run experiments on that hero instead of just personalization, the same slot mapping carries over unchanged.

Was this helpful?
Still have questions?