Quick tip: Versioned Layouts in Sitecore 8

In Sitecore 8, the Layout Details have been divided into two sections: Shared Layout and Final Layout. The new sections provide a way to store different values for language versions of an item.

Shared Layout – For an item, this section stores the renderings that are shared across all language versions.

Final Layout – The current language of the item in the Content Editor at the time of opening the Layout Details is important for this section. The final layout stores the renderings that are specific to the current language version you are editing. It shows the combination of the presentation details that are used, including both the shared and the language-specific configurations.

Advertisements

Collection and cores and naming in SolrCloud

When migrating from Solr to SolrCloud, it’s important to use the correct terminology. In Solr (singleton), one could loosely get away with using the terms ‘collection’ and ‘core’ interchangeably as they may end up named the same. In SolrCloud, that is not the case. Let’s use the index, sitecore_master_index to help illustrate.

A collection is a complete logical index in a SolrCloud cluster.
Ex. The collection name could be sitecore_master_index.

A core is a segment of a collection. A collection could be segmented into one or more cores.
SolrCloud defaults to naming them in this fashion: [collection]_[shard]_[replica]

So, let’s say that the sitecore_master_index has been configured with numShards = 2 and replicationFactor = 3.

Here are the default core names (if the shard names aren’t not explicitly defined):

sitecore_master_index_shard1_replica1
sitecore_master_index_shard1_replica2
sitecore_master_index_shard1_replica3

sitecore_master_index_shard2_replica1
sitecore_master_index_shard2_replica2
sitecore_master_index_shard2_replica3

Upon creating a collection with no shard splitting and only one instance of the index (i.e. no replication), the name of the collection would remain sitecore_master_index and the core name defaults to sitecore_master_index_shard1_replica1.

Quick tip: Sitecore multi-site configuration best practice

Sitecore best practices says that if you have a multi-site configuration, each site should have a unique ‘rootpath’ defined.

The sites are set up in the SiteDefinition.config file (Sitecore 8). It is suggested to add a content level above each site’s home node. (such as rootPath=”/sitecore/content/Site1″ and startItem=”/home” for Site1 and rootPath=”/sitecore/content/Site2″ and startItem=”/home”. This will:

1) allow for storage of global data directly under the /sitecore/content/Site(x) node

2) assist the LinkProvider in doing its job of creating the correct url for an item.

Quick tip: Sitecore per-site language embedding

Sitecore does not come with the an out-of-the-box way of being able to have language embedding turned on or off at the site level but it can easily be done using different LinkProviders.
1. Create two LinkProviders, one that has languageEmbedding turned on and one with it turned off. (Both referenced under <linkManagers><providers>).

2. Create a custom attribute for the <site> node called linkProvider and allow the person configuring to choose which provider to use at the site level.

3. When a link is rendered, the linkProvider would then be determined within a switcher LinkProvider which looks at the SiteContext attributes of the current site to choose the proper LinkProvider.

Quick tip: Sending an email via Web Forms for Marketers

When using the native WFFM save action, “Send Email Message,” it’s important to know that the SMTP server setting in the config files is not used.

Update the Parameters field under the Submit section of this item in the Content Editor with the SMTP mail host:

/sitecore/system/Modules/Web Forms for Marketers/Settings/Actions/Save Actions/Send Email Message

Here are the default parameters:

<Host>[your-smtp-host]</Host>
<From>[your-default-from-address</From>
<IsBodyHtml>true-or-false</IsBodyHtml>

You may also want to include others:

<Port></Port>
<EnableSsl></EnableSsl>
<CC></CC>
<BCC></BCC>

Sometimes having your mind in the gutter isn’t a bad thing

Sitecore provides a quick summary of each item in a small column to the left of the content tree. It’s easy to overlook and underuse this bit of functionality.

gutterimage1

Lots of details can be obtained for an item at a glance including whether or not the item is a bucket, has personalization or a test, broken links, etc.

If more than one of the checked options apply to an item, a nick mark appears on the icon; on hover, a menu of indicators pops out.

gutterimage2

A favorite is the “Presentation Overridden” option. This indicates when the content editor has changed the layout details from what is in the template’s standard values.

This gutter also offers a quick way to access related functionality, like resetting the layout details. Click the icon and the “Reset Layout” dialog box displays.

gutterimage3

And since Sitecore is so customizable, you can always add your own custom gutter icons/functionality … with Powershell Extensions.