Sitecore “Gotchas!”

Sitecore Best Practice Series:


# Description Rationale
1 Use short item names in deep content structures Sitecore path is restricted to 256 characters.
2 Enforce unique item name requirement Sitecore allows having multiple items sibbling items with the same name, when navigating to one of such items, the first item in the content tree will always be served.
3 Enforce unique item field name requirement Sitecore allows having multiple items fields with the same name, which may lead to wrong data being served.
4 Publish the related media items after the item publish Sitecore does not publish related media assets along with the item.
5 Make sure all important actions are logged. Sitecore does not log everything.
6 Switch CodeBehind to CodeFile in sublayouts Sitecore reloads the whole application after a change in configuration files or the /Website/bin, resulting in first slow loads after each build. Change the control definition of the .ascx file to use the .cs file instead of the compiled DLL by using CodeFile instead of CodeBehind.
7 Backup filesystem and databases before module installation Sitecore does not provide an automated way to uninstall installed modules and removing them manually may become difficult and time consuming; having a good backup created prior to the module install provides an easy and quick way to restoring the application to the previous state.
8 Set languageEmbedding to “always” or “never” Sitecore does it’s best to detect the language of the page, and it may or may not embed the language abbreviation into the URL when it is unsure. Set the languageEmbedding attribute of the link provider to “always” or “never” to make sure links remain consistent.
9 Avoid using aliases in multi-site environment Aliases are context independent, therefore a single alias is shared by all websites (use 301 Redirect module instead).