As I’m sure you are aware, Content Management Systems (CMS) are very important as your website may be the first sales person a company interacts with. In this blog, I will be specifically discussing Sitecore best practices for development and architecture. If you didn’t know already, Sitecore is a beast when you consider how advanced it is and its capabilities.
Personalisation, campaign management, Analytics, you name it! The question is, how can you get the best out of using Sitecore? What is the best practices for Sitecore? The first answer is, come to us; we have experienced Sitecore developers including myself who is the lead Sitecore solution architect having over 14 years of experience.
To get the best practice of Sitecore your website needs a good structure and a good architecture. Templates are how the best Sitecore solutions are born. Experienced Sitecore developers who do analysis of the website's requirements, break templates down to the basic entities and then work even further to understand the content structure required for the final site.
To create a suitable template structure and architecture, it is important to pay attention to the following:
- Find the relevant fields that relate to a particular entity and can be reused in another template
- When creating templates, fields need to be in logical sections based on categorisation of data
- If predefined structures for items need to be created, then the branch templates need defining one the sub-items have been created
- Carefully select field name so that users can easily find and identify them
- Display name needs separate fields, breadcrumbs need titles and navigation title fields for any page items
- The less RTE fields in a template, the better
- Create simple template components that can be used as foundation templates
Once you have your templates, consider the establishment of the content tree for the website. This will help you easily manage your content. Now you need to pay attention to these specific points when creating your tree:
- Content structure is very important in Sitecore as it influences how your site performs. For best practice, I suggest that you never have more than 100 under an item node.
- Plan the structure of your content using a sitemap. Place all the items which are accessed using a URL as descendants of the website item
- Identify the security requirements for a multi-site in one instance environment and design the structure of the site around meeting these requirements
- Maintain only a few versions of each item during the implementation phase
Now that you have your structure ready, you should get started on the presentation of your structure. This is the layer that users interact with.
- Make sure that layouts are stored in /Sitecore/Layout/Layouts/ and that sub-layouts are stored inside /Sitecore/Layout/Sublayout. You can always create sub-directories within these sections as required with the necessary restrictions
- Try to have only two or three layouts per device and handle the various structures using placeholders and sub-layouts
- Use field renderer object to render the fields on presentation. This provides the CMS inline editing features for the pages. Use DefaultFieldEditor module from shared source for allowing inline editing of fields that are not shown
- Options for caching should be configured when controls are used based on the control definitions
- Use Sublayouts in comparison to XSLT when creating complex presentation items. This is because it helps to manage code more efficiently and enables effective debugging
Caching is a crucial topic when creating your Sitecore solution as it is key to site performance. When creating a website, it is very important to make sure it is operating at high speeds. Sitecore provides multiple options to improve the performance of your site. Sitecore enables full management of the sites’ cache. Finally, I will provide you guidelines to follow for caching:
- The combined size of caches should never exceed the memory available
- The Sitecore debugger /Sitecore/admin/stats.aspx, and /Sitecore/admin/cache.aspx can be used to measure your site's performance
- When monitoring your cache, if the delta value continuously changes alongside the size of the cache above 80% of the max size limit for that cache, then you need to increase the max cache size by 50%
- Make changes to the various layers of caches for your solution to identify its optimal settings
If you consider these Sitecore best practices, then you will be well on your way to creating a super Sitecore solution. Once again, we can help you if you are having difficulty creating your solution or need help using certain features to its maximum capability. We will be happy to give you a free consultation tailored to your requirements.