The Layer concept in Modular Architecture

Modular Architecture is a set of principles and methodologies used in Sitecore Habitat to showcase Sitecores recommended best practices for solution architecture in a Sitecore solution. This is my second post on Modular Architecture and Sitecore Habitat. If you haven’t read the first post already you can read it here. What are layers in Modular Architecture? The concept of layers is a concept in Modular Architecture originally described in Pentia Component Architecture. ...

December 9, 2015 · 19 min · alc

The groundbreaking Sitecore Habitat

Sitecore released a new demo site late September called Sitecore Habitat. There is nothing new in Sitecore supplying a demo site but this one is nothing less than groundbreaking, it is a real revolution in the way that Sitecore teaches developers to work with their product. In the latter days Sitecore would never explain how to structure your solution. They would merely supply limited demos showing how different functionality can be achieved using the Sitecore API. Nothing about how to structure a large solution that has to be easy to maintain over time. ...

November 30, 2015 · 10 min · alc

How to extend placeholders in Sitecore MVC

Wow it has been ages since I last wrote a blog post so it is about time that I get started again. A colleague of mine asked me a question the other day about how I would implement a page(experience)-editable accordion spot where each element in the accordion is a rendering item. Kind of like shown below where the content in each accordion element is a rendering with its own datasource. You should be able to personalize and test each rendering individually. ...

September 24, 2015 · 5 min · alc

Working with custom MongoDB collections in Sitecore 8 using WebApi

The introduction of the xDB to the Sitecore eXperience Platform offer a ton of new options for us Sitecore developers. As a bonus we suddenly have a data store for anything at any time instead of either trying to make the data fit into Sitecore items or give up and go with a custom database. Now we can just use mongo for almost anything. In this post I will show how extremely simple it is to get and set data in a custom mongo collection. ...

January 24, 2015 · 3 min · alc

Implementing a WebApi service using ServicesApiController in Sitecore 8

This will just be a quick post about implementing a WebApi controller in Sitecore 8 using the ServicesApiController class. Perhaps this post can help some of the teams in the ongoing Sitecore Hackathon, who knows. The ServicesApiController class Sitecore.Services introduce a new abstract class called ServicesApiController that derives from the System.Web.ApiController. The class itself only purpose is to identify an ApiController as being a Sitecore ServicesApiController. This identification is used by some WebApi filters that is added in the include config file Sitecore.Services.client.config ...

January 24, 2015 · 4 min · alc

Securing the password recovery experience in Sitecore 8

Following my post on password recovery in Sitecore 8 fellow Sitecore MVP Kam Figy pointed out how the default Sitecore implementation potentially can be used by a malicious individual to block an editor from logging in by resetting their password automatically. This can be done simply by creating a script that request a new password for a known user name once every x minute/second. That would really annoy the victim and potentially also cause business havoc. ...

January 23, 2015 · 5 min · alc

The amazing password recovery experience in Sitecore 8

Along with the new login screen in Sitecore 8 there is also a new implementation of password recovery for editors. In the old versions of Sitecore the /sitecore/login/default.aspx page redirected the user to a page called passwordrecovery.aspx. This page used an asp:PasswordRecovery asp.net standard webcontrol. Personally I never became fond of all of these standard but rather complex asp.net webcontrols back when they were released with .NET 2.0. They allowed you to really quickly get a demo site up and running with standard functionality but changing any behavior just a tiny bit to fit your domain specific needs or even design took much more effort than just to use simple webcontrols to build up the same functionality. I only know about most of these webcontrols due to old Microsoft certifications where you were forced to answer all questions like you used them all the time even though you always chose not to because of their inflexible design. ...

January 21, 2015 · 6 min · alc
sitecore_login

Changing the image on the login screen in Sitecore 8

I really like the new login screen in Sitecore 8. The old one was also getting very old, except for some small makeovers especially from Sitecore 5.3 to 6 and the addition of a few new applications it has been almost completely static for more than 8 years. Once upon a time the login screen had the option of adding a partner logo and some additional text. I am not sure if anyone ever used this feature or if it was still working in the later versions of Sitecore 6 and 7. ...

January 19, 2015 · 2 min · alc
html_for_babies

Extension methods for versioned layouts in Sitecore 8

Finally I am back blogging. The last 1½ month of my paternity leave and the first week of work did not go exactly as I had planned. Looking on the bright side I have learned a lot about how a baby’s immune system evolves. It goes something like this, baby gets a virus/bacteria, it incubates and when it is strong enough it attacks the parents (the virus, not the baby). One virus or bacteria rarely visit a baby alone since their immune system is weakened making them easy prey. This means a common cold suddenly can become severe diarrhea (feasis everywhere) and then pneumonia that needs treatment with penicillin which then can feed some mushroom loving rectal e. coli bacteria that causes diarrhea and so on.. ...

January 11, 2015 · 6 min · alc
sitecore-launchpad-add-application

Add a SPEAK application to the Sitecore 8 Launchpad

My brain is currently in a complete amoeba state. This is my first blog post since I started my paternity leave some 4 weeks ago. I had been planning to write a post a day but I guess this is not really how taking care of a baby works. The Launch Pad was introduced in Sitecore 7.1 even though it back then did not contain any applications. In Sitecore 7.5 the xFile application was added to the launch pad as the only application that shipped with Sitecore. ...

December 4, 2014 · 3 min · alc