A List of Custom Sitecore DMS Functionality

The Sitecore Digital Marketing System (DMS) is a very unique set of tools which allows Sitecore developers the freedom to implement very unique solutions to business problems. There are a lot of Sitecore people doing some really cool stuff so I gathered a list of some unique DMS customizations and extensions that push the out-of-the-box DMS capabilities.

Admittedly it can be hard as a Sitecore developer when you first start to learn and work with the Sitecore DMS because the majority of information you find on the web is marketing mumbo-jumbo instead of the technical information we crave. Hopefully this (incomprehensive) list can help you learn more about the technical side of DMS and serve as inspiration for what is possible.

As always, please submit anything new (or missed) that can be included in the list.

Personalization

  • Weather-based content targeting with Sitecore DMS – While you may not necessarily care about the weather, this post serves as a great example of integrating data from a 3rd party system.
  • Get last visited pages from a Sitecore DMS (OMS) Profile – This short post shows you how to get a full list of the visited pages for the current visitor which you can use to show recent page views or recent product views for a user. (This is another common request I receive)
  • Sitecore Previous Visit Last Page – A second example showing how to grab previous page visits for a visitor.
  • Client Tracker with Sitecore DMS – This was released as a Sitecore module and allows you to track a visitor’s location (using HTML5 Geolocation API) and store it in the Sitecore DMS.
  • Geofencing with real-time Geodata in Sitecore DMS – This post show an example of using the HTML5 Geolocation API to implement Geofencing in Sitecore.
  • Geo push emails with real-time Geodata using Sitecore Automation Engagement Plan – Implements custom actions and rules for engagement automation plans to send emails to visitors when they are close to a specific location.
  • Track Exteral links with DMS – This is a series of posts by Pieter Brinkman that shows you how to extend the DMS to track clicks on outgoing links and create a report to view the data.
  • Trigger Sitecore DMS Campaign via Ajax call – A solution that allows you to asynchronously registering campaigns, goals, or page events.
  • Client Event Tracker – A module on the Sitecore marketplace that allows you to track external file downloads, Ajax events and any kind of visitor interaction that doesn’t cause the page to refresh.
  • Event Click Tracker – A module on the Sitecore marketplace that gives authors the ability to add a javascript based click tracking to links through the Rich Text Editor interface.
  • Sitecore DMS Geo IP lookups: a smarter approach – A unique approach packaged as a Sitecore module that minimizes the amount of MaxMind Geo IP lookup calls so that calls are only used for high-value visitors.
  • GeoLite Lookup Provider – A module on the Sitecore marketplace that provides another option for those who want to use something other than the MaxMind lookup service. This uses a local copy of the GeoCityLite database that is freely available from MaxMind.
  • Geo IP Tester – A module on the Sitecore marketplace that provides two different ways to test Geo IP capabilities in Sitecore as a developer.
  • Experience Explorer –  A module on the Sitecore marketplace that enables you to simulate visits to a DMS enabled website with different device, location information, referral sites, triggered goals and campaigns, and profile key values.
  • Using DMS in your Sitecore 7 Search – This post shows how to store DMS categories in computed index fields to allow searching of content based on DMS categories.
  • Most Popular Pages in Sitecore (Again) – Shows how to get a list of the most viewed pages in Sitecore within a certain time frame based on Analytics data.

Custom Conditions

Reporting

  • SBOS Accelerators – This module available on the Sitecore marketplace contains a handful of custom DMS functionality.
    • Personalization Tracker – Allows you to see the number of views or click for personalized content.
    • Actual Conversions Report – Adds a report to the engagement analytics app that shows more detailed information about A/B and multivariate tests.
    • Campaign Tracking on Aliases – Allows you to assign Campaigns, Goals and Page Events to Alias items and they will be tracked when the appropriate alias is requested by visitor.
    • Measurement Types for MV Testing – Extends the default multivariate testing functionality to allow you to measure other activities (such as click through rate and goal conversion) instead of just engagement value.
  • Track virtual page views with Sitecore DMS – This post provides a solution to track page views in the DMS for pages that reside outside of Sitecore.
  • Register local search terms in Sitecore DMS – Wow I did not know about this one. Looks like you can track local site searches in the DMS as page events if you append the search terms to the URL with the appropriate querystring parameter.
  • Adding Site Filters to DMS Reports with Sitecore 6.5 – This seems like a common request when running a Sitecore multi-site solution. This post shows how to add a report filter so that you can view data for a single site at a time.
  • Database Sizing for the Sitecore Customer Engagement Platform – A series of blog posts by nonlinear that can help you estimate how much storage capacity may be needed for your DMS implementation.
  • Sitecore DMS Visits from Specific IP Addresses – This post highlights that IP addresses are stored in an unreadable format (for humans) in the analytics DB and provides some example SQL scripts for converting and/or interacting with that data (Ex: Delete all visits from localhost).
  • Understanding Sitecore DMS Campaign triggering – A good explanation of how campaigns work out-of-the-box and offers a solution to trigger a campaign even if another campaign was already triggered or it’s not the visitors first page view.

Other Must Reads

  • The page template mistake – Still the best Sitecore article I’ve ever read. You need to change the way you think about working with a CMS in order to build a true Sitecore solution that is DMS ready. Otherwise you’re just building a website with Sitecore which is a hell of a lot different than a real Sitecore solution.
  • Avoid the use of Sitecore.Context.Item – Another good reminder that we can’t rely solely on the context item when working with DMS and personalization in Sitecore (Ironic because Sitecore.Context.Item is the name of my blog!).
  • Strengths & Weaknesses of Sitecore’s Standard Engagement Value – This post talks about engagement value and how it is not an accurate measurement tool over long periods of time.
Advertisements
Posted in Customization, Sitecore
5 comments on “A List of Custom Sitecore DMS Functionality
  1. gorhal says:

    Thanks for mentioning my blog 🙂

  2. Ben McCallum says:

    Great list that will save me a lot of time. Cheers!

  3. Mark Lowe says:

    Great list. Thanks!
    If you need to change how campaigns are registered, check my blogpost:
    https://sitecoreblog.marklowe.ch/2014/07/understanding-sitecore-dms-campaign-triggering/

    • Hi Mark. Good post. I added it to the list in the “Reporting” section since campaigns seem to be something that a lot of people are confused about with Sitecore. A lot of my clients expect completely different functionality than what Sitecore offers and I’ve also had to spend a lot of time customizing this area.

  4. Siddhi says:

    This is a very nice collection of sitecore DMS customizations. Some really awesome ideas at one place! thanks.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s