Friday, April 29, 2016

Major changes in Sitecore versions

Sitecore Basics

 1.      What are the major changes in Sitecore versions 7.0, 7.1, 7.2, 7.5, 8.0 and 8.1?

Sitecore 7.0
Sitecore 7.1
Introduced item bucket concept to support storage of large numbers of content items
SPEAK UI framework is introduced to accelerate custom application development
Sitecore tagging /facets for improved search experiences
The Sitecore Item Web API (previously available as a separate download) is now distributed as part of the CMS
A new Sitecore.ContentSearch namespace that contains new indexing and search APIs
Support for MVC 4, along with other fixes and improvements.
Change in the search provider architecture allowing different search engines to be swapped in to support both published site and internal CMS search




Sitecore 7.2
Sitecore 7.5
Performance improvements in publishing
Introduction of xDB (Sitecore Experience Database)
Sitecore MVC supports ASP.NET MVC 5.1
Introduction of xProfile
Multivariate testing configured per language



Sitecore 8.0
Sitecore 8.1
Redesigned cross-platform SPEAK-based Sitecore client interfaces

Redesigned Launchpad offering access to all platform applications

Introduced Federated Experience Manager (FXM)

Enhanced Experience Analytics

Versioned layouts – a different presentation set on different versions of different languages for the same item

Content testing and optimization reporting
Sitecore 8.1 provides full integration with Sitecore Commerce 8.1, ensuring the users’ purchase transaction is seamlessly integrated with the overall digital Experience.

Sitecore Detection Services—IP lookup and device detection services built into the platform—as well as rules editors. Now you can customize your users’ experiences based on their location and optimize their load times and display based on the actual device they’re using

Sitecore has packaged the product into two version(flavor’s),one for those who interested in market-leading web content management system (Sitecore Experience Management 8.1 -CMS only mode) and another those who want to use Sitecore to manage the entire customer experience (Sitecore Experience Platform 8.1)



Below link details about the sitecore versions & why upgrade to Sitecore XP 8.1
https://www.eduserv.org.uk/~/media/Files/News%20and%20Events/PDF%20files/WhyupgradeSXP81WPLTR.PDF

2. Difference between TreeList and TreelistEx?
For performance, you should use the TreelistEx field type in your data templates instead of the Treelist field type.
With a Treelist, the client renders the selection tree and the list of selected items whenever the user selects an item that contains the field.

With a TreelistEx, the client renders only the list of selected items, and does not render the selection tree until the user clicks the Edit command above the field. This is especially important for Treelists that invoke queries that can consume processing time on the server.

3. What is shared layout and final layout in Sitecore8?
    In Sitecore, you can specify shared presentation details for all versions of an item, in all    languages, and           you can specify different presentation details for each individual version of an item and for each language.
In this way, you can present a different composition of the layout depending on the version and language of the item. For example, in a multi-language solution, where you have different marketing strategies or promotional offers that are relevant only for a specific language, you are not restricted to display the same components for all languages.

For each item, you can specify the presentation details for:
The shared layout – stores the presentation details that are shared by all the versions of the item in every language. These presentation details are based on the standard values of the template that the item is based on.

The final layout – stores the combination of the presentation details on the selected version of the item and the presentation details of the shared layout. This is the layout that your visitors see on your website.
For more detail see the link https://doc.sitecore.net/sitecore_experience_platform/content_authoring/getting_started_with_content_authoring/creating_content/edit_the_layout_of_an_item

4. What is computed index fields?
Computed index fields allows you to perform additional processing before adding data to an index. For example, you may want to store the contents of a droplink field (the raw value being a GUID) as the target item's name, or a particular field value from the target item.

5. What are untokenized and tokenized indexType?
 untokenized: computed field is indexed as a single string
 tokenized: computed field is split up into separate string or phrase for display /faceting    purpose for ex: ‘Parameshwar Savale” will be split up into “Parameshwar” and “Savale”. In case of untokenized it will store it as a single string in index.
For more info please refer the blog post :
http://www.sitecore.net/learn/blogs/technical-blogs/martina-welander-sitecore-blog/posts/2013/09/sitecore-7-search-tips-computed-fields.aspx

6. What are Dynamic placeholders and need of dynamic placeholder in Sitecore?

Dynamic Placeholders for Sitecore allows you to add the same placeholder name several times. This can be across one or more renderings and even the same placeholder can be used multiple times in a single rendering.

Dynamic Placeholders simply use the rendering ID to create a unique placeholder name. If more than one dynamic placeholder with the same name is in a rendering it will also append on an incrementing number. Behind the scenes the Dynamic Placeholders extracts the placeholder name to ensure the correct allowed renderings are shown.

if we use rendering guid for unique place holder name, the problem is placeholder key won’t be user friendly, making it harder to identify which one of the dynamic placeholders was actually being used by a component.

Why – Suppose say we have two same containers on the page(i.e. container is having two placeholders “ph_left” & “ph_right”), the keys for the first container would dynamically be generated as ph_left1, ph_right1 and then for the second container ph_left2, ph_right2 and so on.

For more info please see https://pageditor.wordpress.com/2016/02/09/define-the-key-for-dynamic-placeholders/
http://fes-sitecore.blogspot.in/2015/10/dynamic-placeholders-and-tabs-in.html

7. What are data providers in Sitecore & when to implement custom data providers in Sitecore?
There are many ways of integrating external data with Sitecore but a data provider is one of the most powerful. You can get external data to display and behave as native Sitecore data -- to be browsed, rendered and related to other content within Sitecore.

Sitecore provides data providers that access the file system and the relational databases that the CMS supports, including SQL Server and Oracle. You can write data providers to support additional databases technologies;

You can also write custom data providers that access external systems to expose data in external systems as if it were native data in the CMS; for an example, the YouTube Integration Sitecore Shared Source project that represents a YouTube video library as Sitecore media items.
8. What is item rendering?
Item renderings allow items to contain information about how to render themselves when rendered in the context of another item. Refer http://www.sitecore.net/learn/blogs/technical-blogs/john-west-sitecore-blog/posts/2012/06/mvc-item-renderings-in-the-sitecore-aspnet-cms.aspx
@Html.Sitecore().ItemRendering(“id”) - renders items using the rendering set in their "Renderers" field. This enables us to create a component with different presentation for each item.
ItemRenderer:- Invokes the mvc.renderRendering pipeline once for each of the item renderings specified in the __Renderers field of an item.
Item rendering :
·         Allow you to render an item with whatever rendering has been assigned to it

·         Let you render a collection of items with differing renderings

Use Item Rendering only if you need different HTML markup for each item. If you only need different styling per item, just add a CssClass field to your carousel slider template and and use CSS rules to do your styling. – for detail http://www.matthewdresser.com/sitecore/carousel-sitecore-mvc-(part-3-item-renderings)




2 comments: