2

Currently I am using Sitecore version 8.2 update 3, I already set the presentation in the standard value of the template, and created couple of item from that template, all the item presentation (__rendering field) value inherited from the standard value that is the default behavior of the Sitecore.

But now I want to change some default presentation rendering in the standard field of the template, and don’t want to reflect that's changes on the __rendering field value for the existing items that i have already created, I want to see the new changes in the newly created items only.

Currently Presentation field(__rendering) of the items getting value from the standard value , until and unless I change the item presentation value itself.

enter image description here

Is there any way to control the standard field value behavior on the item level, means if I don’t want to inherit the standard value to the Item field value ? Can I mark it on the field level of the item? so I can allow the Item Field to check the value from the standard value or not ?

2

Unfortunately, there is no field or setting that allows you to control the behavior the way that you are trying to do so. However, in the below, I have provided you with two solutions that should achieve the result that you are looking for.

My recommendation is that you go with the second option: creating a new template for the new items.

Breaking the Presentation Inheritance

You should be able to achieve what you are looking for by simply making and saving an arbitrary change to the value of the _Renderings field on the existing item(s) before making your changes to the __Standard Values. This way, the field on the existing item(s) will no longer inherit the __Standard Values.

If you have a large number of items, you can do this with a simple script or with Sitecore PowerShell Extensions (SPE), if you have it.

Important: I advise caution when going down this road. From a maintainability perspective, it's typically better to be able too control presentation on multiple items from a single place. As soon as you break this inheritance, you lose that ability.

Creating a New Template for the Presentation of the New Items

An alternative solution that I recommend before you intentionally break presentation inheritance is to create a new template with its own __Standard Values for the new items. This template can be set to inherit the existing template, which means that its __Standard Values will initially inherit the presentation of the existing template's __Standard Values. You can make the modifications that you want to reflect on the new items, which will break the inheritance, as desired.

The benefit of this solution is that the existing items will still inherit the presentation from the original template's __Standard Values, while the new items will inherit the presentation of the new template's __Standard Values. This avoids the maintenance issue and can save you on future effort.

Note: If changing the template is a problem, note that you could also do the same thing with a branch template, but you will lose the presentation inheritance for the newly-created items.

| improve this answer | |
  • Using a branch templates we can achieve the desired behavior. screencast.com/t/R7VppTBUR6su But it will not help with the existing scenario, as i have already created 500 items from existing template.. – Ashish Bansal Sep 16 '17 at 12:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.