Johan Björnfot
Optimizely
Jun 1, 2018
visibility 3620
star star star star star
(3 votes)

Disable Visitor Group personalization

In EPiServer.CMS.Core.11.8.0 we released a feature (that is somewhat related to GDPR) which is the ability to turn of Visitor Group Personalization for all/some requests. We have not changed the default behavior which is that Visitor Group personalization is enabled but made it possible to control it by registering a component implementing IPersonalizationEvaluator in IOC container. The interface has a single method and looks like:

/// <summary>
    /// Signature for a component that determine if personalization should be performed or not for the current request
    /// </summary>
    /// <remarks>
    /// Registration of an implementation is done by register the implemenation in IOC container
    /// </remarks>
    public interface IPersonalizationEvaluator
    {
        /// <summary>
        /// Determines if current request should be personalized or not
        /// </summary>
        bool Personalize();
    }

There is an builtin implementation for "Do Not Track" header that can be registered. One thing to be aware of for custom implementations is that the implementation is likely to be called once for all request (we cache the request so it is only done once for each request) so any implementation should preferably be fast since it will affect the time on all requests.

Read more at Disable visitor group personalization
 

Jun 01, 2018

Comments

error Please login to comment.
Latest blogs
Surviving a Dirty Feed. Part 3: Error Handling and Event Batching

Committing a 250,000-row Optimizely catalog import row by row, returning a per-row failure report, and coalescing catalog events into one per batch.

Stanisław Szołkowski | Oct 16, 2026 |

Building UI Extensions for Optimizely SaaS CMS

Introduction Developers have been extending the functionality of Optimizely PaaS CMS for years using addons built in C# and deployed as NuGet...

Mark Stott | Oct 15, 2026

Cheapskate AI Translator: Because Translation Should Not Require a Second Mortgage

There is a particular kind of software project that begins with a detailed architecture document, a product roadmap, and a carefully assembled...

Linh Doan Cuu | Oct 15, 2026

Computed Fields in CMS 13 Content Contracts with Optimizely Graph

Content Contracts in Optimizely CMS 13 allow different content types to share a common structure when querying Optimizely Graph. But what if the...

Mardy | Oct 14, 2026