CMS and unique content for specific pages

I am working on my portfolio site. On each project page (currently built from a single collection page template) there are ~12 different types of content that I’d like to be able to choose from when building the page (full-width video, image carousel, 2-column images, etc.).

These are more complex than the current list of CMS items, and the ones I’d like to use for each project will vary.

I’ve used the Collection builder to populate the main content of the project (client name, description, thumbnail/header image, etc.) to make it easy to quickly add new projects and have them populate on the homepage, but I need to leverage more complex elements in the project, and the ones used will vary for each project.

Is there a way to create a collection page that has a section that is unique to that page (ie. separated from the dynamic content shared by all pages in a collection)?

Any help would be awesome. Thanks.

Hi Gleb, no not technically.

However, using conditional visibility allows you to choose which parts of your collection page show under which circumstances. You can use this so that e.g. if you have photo gallery items loaded, then the photo gallery section appears. If you have a video specified, then the video section appears.

However the same master layout will apply, and they’ll always be in the same order by default, without custom code rearranging or otherwise modifying your page content.

Another approach, somewhat of a hack, is to build a whole bunch of “sections” that are hidden on the page, and then use a full-page-sized rich text element with Finsweet’s Rich Text Enhancer to embed them when and where you want inside of the rich text element.

It works, and is flexible but you may struggle with the CSS class application since the rich text element will treat that content as sub-elements. May be worth trying though.