Today I was asked by a customer to filter out their internal IPs from all DMS reports. There are two approaches for obtaining this. Either very simply add the IP addresses to the Sitecore.Analytics.ExcludeRobots.config as excludedIPAddresses. But I did not like this approach. The customer editors are not robots, so this is messing up domain entities.. […]
How to stop Sitecore ECM from spamming duplicate recipients
In the current version of ECM the same mail message will be sent several times to the same user if the user has registered several times to the same target audience with a different user but the same email. The issue is really that the email recipients are not filtered by distinct emails before the […]
Modifying cache keys in Sitecore
Sitecore ships with some very effective cache mechanisms. One of these mechanisms is the html cache where the output of a rendered control is cached in a table which has a key for each entry. The generated key can vary by different parameters which can be set on the sublayout, xslt, view rendering etc. The […]
Handling 404 in a Sitecore multisite solution and avoid 302 redirects
This post shows how to handle a request for a page which is not found, how to avoid having the request being redirected with a 302 status code before a 404 and finally how to use different pages within Sitecore for not found pages in a multisite solution. The post is based on some code […]
SignalR component for SPEAK in Sitecore 7.1
Following my blog post from earlier this week where I showed how to make SignalR work in Sitecore SPEAK, I thought of another solution to the same issue which is much more streamlined with SPEAK. The issue which I hacked my way through was that the RequireJS implementation in SPEAK requires that a JavaScript file […]
Custom Field indexing with the new Sitecore 7 content search API
Sitecore 7 comes with it’s new Content Search API. The title of this post is self explanatory for what i’m about to share. Scenario I assume I have a website that contains information about different publishers books. These books are imported into Sitecore in XML format. I assume that on the website a user should be […]
Making sense of Sitecore SPEAK pipelines
Following this great post by my colleague Alan I came up with an idea on how to improve the SPEAK pipelines concept. The main problem with the pipelines as they are in Sitecore 7.1 is that there is no way to add or remove processors without making changes in JavaScript code. You can’t even change […]
Setting up a Sitecore SPEAK ListControl
The ListControl in SPEAK is made as a generic control for showing lists. Data is fed into the list using a datasource component as shown in my previous post here. In this post I will show how to define the columns in a ListControl and setup the rendering on a SPEAK page. It is kind […]
Creating a simple Sitecore SPEAK JSON datasource
In SPEAK a list is fed with data through a data source. For example to get data into a ListControl the Items rendering parameter on the ListControl has to be bound to a collection on a datasource. When the items model attribute changes, that is when the datasource changes, then the ListControl automatically refreshes and […]
Using SignalR in a Sitecore 7.1 SPEAK application
During the Sitecore Hackathon we decided to implement a chat app for Sitecore editors so it is possible to send text messages to other online editors. To do this we wanted to use SignalR and SPEAK for the UI part. Setting up SignalR and creating the SPEAK layout was done quickly but it quickly became […]
The rather unknown StringUtil class in Sitecore
This is just another quick tip about the Sitecore API and this one has been around forever but I rarely see it used. I use it quite often myself when I perform URL or path manipulations so now I want to spread the knowledge so others can benefit from this helping class as well. It […]
Nesting if statements
This post is not only about Sitecore development it is valid for any code written in almost any language. It is about making code easier to read. The post is somewhat subjective but I hope that all developers with an IQ higher than 80 will agree. Back in the days when I learned to write […]