New Insights from Our Team

Articles about our people, expertise, research and best practices, including insights from ten years of simplifying complexity and building digital products that improve people’s lives.

Sitecore 9 Analytics Aggregation Stops Abruptly

We recently performed an upgrade from Sitecore 8.2 to 9.0.1 and at first, all was working smoothly. We installed everything in a modified XP3 configuration. After a small incident where SQL Server was down for some time, we noticed that analytics aggregation stopped...

Configuring testing in Sitecore Workflow

Sitecore A/B and Multivariate testing can help content authors improve their web content by performing a statistical analysis based on the data captured by Sitecore Analytics. Results obtained from Content testing can help better organize web content as well as...

Quick Upgrade from Sitecore 8 to 9

Okay, so I’ll just start off with the disclaimer: None of what is mentioned in this blog post is officially supported by Sitecore. Sitecore has official upgrade documentation that you should follow if you’re looking to go the supported path. With that over, I should...

“Reach” Statistic Issue in Sitecore 8

After a recent deployment of Sitecore 8.2 for one of our customers, we noticed that the “Reach” statistic when you open the “Personalized Experience” dialog in the Experience Editor was showing some numbers that were rather odd. According to Sitecore documentation,...

Basic SAML SSO with Sitecore 8

Sitecore 9 comes with nifty new configurations for federated authentication using a variety of identity providers, including SAML providers. If you’re stuck on Sitecore 8 for a little while, though, SAML authentication is still a custom implementation. With the right...
Good Design Does Not Sell Itself

Good Design Does Not Sell Itself

We’ve all seen rants from wounded designers complaining about the fate of their concepts at the hands of unappreciative clients—“They wouldn’t know good design if it hit them in the face” or “Another bad client ruining my design”. The feedback is in, and someone is...

Rich Text and Empty “a” Tags in Sitecore 8

After content migration for a recent project, we noticed that certain components were throwing errors on the page once content was migrated. Note that we were using GatherContent, a really nice tool to prepare content for migration while implementation of the Sitecore...

Sitecore + Lucene Search Result Ranking

As many of you know, Sitecore’s Content Search API does a great job of hiding the complexities of Lucene, thus providing a quick way for implementers to provide search functionality to their end users when building Sitecore websites. Wrapping search in this way also...

Submit Additional Context Data with Sitecore WFFM

This blog post is a little bit high-level, but provides some ideas for capturing context data when filling out Web Forms for Marketers (WFFM) forms. When I say context data, I mean certain things related to the user’s current context on the website (like the User ID,...

Sitecore Search API Boost by Date Range

With Sitecore’s Search API, boosting by date range may seem like a simple a straightforward thing to do. Well, it is if you choose the right (or, rather, suggested) way to do it. Let’s start with the way in which it will not work: dateBoostPredicate =...

Field Editor Customization in Sitecore 8

I’m sure that many of you have worked with Experience Editor and have used Sitecore’s built-in functionality to spawn a “Field Editor” modal window in order to allow users to edit more complex fields (such as Multilist or Treelist fields). This is a simple and...

GlassMapper and Sitecore Remote Events

As I was working on a project recently, I realized that when using GlassMapper in events that are triggered remotely (in my case, the publish:end:remote event), I was getting a fairly odd error that looked like this: Failed to map to property '' on type '' It was also...

Sitecore Databases in Amazon RDS

UPDATE: As of July 2016, Amazon RDS fully supports backup and restoration of MS SQL Server backup files. See https://aws.amazon.com/blogs/aws/amazon-rds-for-sql-server-support-for-native-backuprestore-to-amazon-s3/ for more information about that. Considering this,...

Turning Off Analytics in Sitecore 8.1

How do you turn off analytics in Sitecore 8.1? I’ve been asked this question many times now, so I’ll write a quick post about it. In previous versions of Sitecore 8 (prior to 8.1), this setting was in Sitecore.Analytics.config and was called “Analytics.Enabled”. In...

Leveraging the Sitecore Links Database

Sitecore’s Links database is actually a very useful tool when you are dealing with a lot of data and have to come up with creative ways to get information from Sitecore quickly. In one of our recent encounters, we had to present a list of items that were related to...

Sitecore Custom Index Computed Field

In our previous Sitecore application, we sometimes need to have a custom computed index field based on the business requirements.  For example, we might need an extra field for faceting purpose of certain data template. In order to have a custom index field, you need...

Sitecore 8 Dev and SPEAK Pre-compilation

If you’re an avid Sitecore developer, you’ll quickly realize that the initial load times for Sitecore 8 are a bit longer than in previous versions of Sitecore. This is primarily due to a new addition to Sitecore’s “initialize” pipeline, namely “PrecompileSpeakViews”....

Sitecore 8 Upgrade Image Size Issue

In versions of Sitecore prior to 7.5, many of us have used parameters in Sitecore’s controls (i.e. sc:image) to alter the size of an image. All works well if you use this strategy for image resizing. However, in some cases, we request the URL to a media item...

Sitecore MVC Controller Rendering

This blog post will describe the steps on how to create controller rendering in Sitecore MVC.  One of the benefits of using controller rendering is to set aside the complex logic in the MVC controller. First, you need to create a definition item in the Sitecore tree....

Index Rebuild Stops Abruptly in Sitecore

While performing a large Sitecore upgrade, we ran across an issue during the step that required us to rebuild the search indexes. It seemed that after a few minutes of working as it should, the index rebuilding process would stop abruptly. Initially, we didn’t even...

SymCal Event Calendar Module for Sitecore 8

For those of you who have been using our SymCal Event Calendar Module for Sitecore 6 and 7, we have recently uploaded a new version of the module that supports Sitecore 8. We also understand that Sitecore’s support for both ASP.NET Web Forms and MVC developers means...

Sitecore 7 Media Upload Permissions Issue

If you’re using Sitecore 7.2 (or 7.5), you’ll notice that the traditional interface for browsing through media items has been improved. What was once the traditional SHEER version of the media browse/upload user interface has now become a more attractive SPEAK version...

Sitecore Workflow Auto Publish Media Items

When you install a default Sitecore 7 instance, you will notice that there is a “Sample Workflow” already configured for you. The final step of this workflow has an “Auto Publish” action, which automatically publishes an item once it reaches the final step of...

Custom Sitecore Rich Text Editor Styles

One of the most important aspects of maintaining a WYSIWYG editing experience is to make sure that the CSS that is used for your website is the same CSS that is used for your rich text editor. In Sitecore, this is pretty easy to accomplish through configuration....

Sitecore Render Image with Glass Mapper

In Sitecore, since it handles the media items through media url, there are query string parameters to control the media item’s properties.  Below are some of them for images: w: Width in pixels h: Height in pixels mw: Maximum width in pixels mh: Maximum height in...

Dynamic Placeholders for Sitecore MVC

We all know that placeholders are an integral part of Sitecore, allowing us to add various components on a page that we have developed. You can even nest placeholders, so that a component placed in one placeholder can offer another placeholder that can house even more...

Automating Sitecore Builds using Jenkins

It is often an expensive task to manually publish both code and content for a Sitecore site manually to an integration environment. Usually, a person is assigned to be a “build master”, responsible for checking out and compiling code, making sure that everything works...

Using GlassCast for Sitecore Items

One very useful Glass Mapper method is called GlassCast. This method is essentially used to convert a regular Sitecore.Data.Items.Item into an Glass Mapper object that you have created. It’s really handy when you have issued queries in your code for certain...

Add Custom Classes to Sitecore WFFM

In the Form Designer property panel, there is an option “CSS Class ” for you to choose which css class to apply.  Shown as the screenshot below: You can add additional custom class names to this dropdown list by adding  Extended List Item to the following path:...

Disable Language Embed in Sitecore Links

Because Sitecore is a CMS that supports multiple languages, you may often notice that links generated from code have the language specified in the link (for example, ‘en’). If you don’t want the language embedded in generated links, you can disable that...

Sitecore WFFM Analytics

Sitecore’s Web Form for Marketers module comes with its own analytics, in addition to those provided by Sitecore. You can access those analytics by highlighting a particular form and clicking the ‘Form Reports’ button in the Content Editor ribbon. See the screenshot...

Permissions For Sitecore Page Editor

We are strong proponents of allowing content authors to perform all of their authoring tasks using nothing but the Page Editor. However, you have to be familiar with the permissions required to perform certain actions in the Page Editor. Here are some quick points on...

Workflow Permissions In Sitecore

I ran across an issue last week while working on a project. I had set up role based access to certain content items in the Sitecore tree, with inheritance for child items. However, I noticed that users that were members of that role did not have permissions to change...

Using Glass Mapper With Sitecore 7 MVC

Before we begin, the first question you may ask is: what is Glass Mapper? Simply put, it is an ORM tool. Traditional ORM tools (like NHibernate, or Entity Framework) connect to databases, and model classes in your Visual Studio project around objects that exist in...

Get Media Url From Sitecore Image Field

If you have a sublayout that needs to get the URL of a media item, such as an image (item[“Image”]), here is a quick tip on how you can get that media URL.   Item item = Sitecore.Context.Item; Sitecore.Data.Fields.ImageField imgField =...