Quite a few of the clients I have worked with lately have asked about implementing Gated Content. Not Gated Pages – preventing access to pages requiring an account and roles but gated areas on an actual page. Essentially requiring a site visitor to give up some information about themselves before gaining access to some content.
This actually a good thing in Sitecore because we can request the visitor’s email address so that we can identify them in xDB. Meaning more and more of our Site visitors will be uniquely identified, tracked and ultimately targeted with personalised experiences.
For a while now I’ve been writing about collecting and displaying data unique to a client in Sitecore’s Experience Profile. What went hand in hand with that is the use of Sitecore Goals and Outcomes – giving a business value, sometimes monetary, to actions performed on the site. The Experience Profile currently shows the goals for each Contact.
However, beyond the goal being registered we don’t know the context in which the goal was met. Wouldn’t it be great if we knew WHAT was added to the basket when the ‘Add to Basket’ goal was registered?
Secure File Upload – Restrict files uploaded via WFFM by Mime type and file size
At the beginning of the year I posted a blog on a secure way to validate uploaded files that goes beyond checking the file extension. I have since redeveloped it from the ground up to exist as a self-contained module which is now available on the Sitecore Marketplace for Sitecore 8 all the way back to 6.5;
MasterKey – Unlock Sitecore Items en masse
So pretty exciting news! My first Module has just become available on the Sitecore Marketplace;
It is inspired by the struggles one of the QA guys I work with who had the joy of going through and unlocking folders and folders of items locked by a Content Editor’s account.
Programmactially Editing a Sitecore Item and Expanding Setting Standard Values
With the CRUD functions as entry points for the Modal it is a matter of retrieving fields for the item and then mapping them into our Models.
Continued from Part I outlining how Entity Service can be consumed by SPEAK.
EntityService in Sitecore.Services.Client
We opted for EntityService as opposed to ItemService as it allowed us to serve up custom, lean Models of Items and Fields. Containing only properties required for the Module providing we implement EntityIdenitity in the class definition.
Assert.IsNotNullOrEmpty (teamName, “Team name can’t be null”)
Last weekend the second 24 hour Sitecore Hackathon took place with the best and brightest from the community competed in teams to build the best Sitecore 8 Module. My brother and I decided to enter a team with a nerdy name referencing the Sitecore API. This was my first Hackathon and I had a romantic view of it being like that scene in The Social Network however in reality it came to be something even better.