2
votes

We have developed a Sitecore site for a client who will primarily be using Page Editor. We've built page type layouts and then componentized everything else, including sub-layouts of content. This allows them the most flexibility when building pages.

So, an author goes to a page selects the main content area (Placeholder) of the page and inserts basic building block components that we've created. These include Rich Text box, page promos, etc. they can use these to build pretty rich pages with lengthy content.

The challenge we've run into is that every time a user adds a one of these components (create a new content item), they need to name it and an item get's created under the page item in the tree. So you could have: Page > Rich Text 1, Rich Text 2, Image, Promo, Rich Text 3, etc. This results in a complicated tree that's hard to navigate. Also, we don't want them to have to name each, since those names are irrelevant.

We're looking for ways to make this easier on the authors, such as automatically generating some logical name for the new item, maybe storing them all in one folder instead of under the page, or hiding them somehow?

I'd love to hear some thoughts on how we could clean this up, or how others have architected similar solutions.

Thanks!

2

2 Answers

2
votes

This is a commom scenario in Sitecore I believe, it gives the Content Author a lot of flexibility.

One first approach I would include in your list is to have two repositories, one for page components and one for shared components. This also require a bit of training for the Content Author to make clear to him what the difference between both folders.

For that, in the sublayout, you can define multiple datasources locations separated by pipe. enter image description here

With that in place, a second tip would be, instead of creating components under the current item, you would add them under a special folder called "Page Components". All of your pages would always have this "Page Components" folder. To accomplish that, you need to change all the insert option to use branchs not templates.

If you don`t know branchs in sitecore, google it and you will get it.

With these two approach your tree would look like that, which is less confusing for the content author:

enter image description here

And, in the Page Editor perspective, the content author would get something like that:

enter image description here

One of the point is, with a special folder only for components, the content author won't need to care much about the components names cause it wouldn't mess with his tree.

Hope that helps.. Cheers

0
votes

You may also want to investigate displaying some fields only in page editing mode. You can control the visibility of some field renderers using the techniques here to expose certain fields to editors in page editor mode that might not otherwise be. I'm not sure if you can put the name property in a field renderer though.

I had to do things like this many years ago when working in RedDot, which only really gave you the page editor mode in which to work.