The PersonalizationEngine is composed of:
  • An API to allow return a list of 'recommended content pages' that are personalized to the current user
  • An EPiServer UI Plugin to allow editors to manager the Personalization Engine rules and output
  • An extensible framework making it simple for developers to plugin additional Personalization Engine rules

The overriding idea is to match up a Visitor Group with a means of providing EPiServer content (PageData) that is relevant to that group. Editors can match create Visitor Groups and then match them with pre-defined ContentProviders which are configured to provide content from a particular taxonomy. For example - you may match first-time visitors to your site, to all pages which have a PageName property containing the term "Introduction") .

The Personalization engine will iterate through all of the Engine Rules that have been defined by an editor and for each rule; determine whether the current user is a part of the defined Visitor Group, if so it will ask the specified ContentProvider to return its list of pages. All of the distinct pages are collated together (maintaining their order) and then returned to the calling method.

Additionally ContentProviders can be set up with a criteria allowing each provider to provide different content based on the value supplied by the editor for the criteria. For example - you could define multiple rules using a PageNameContentProvider which would return Pages with names, containing "Introduction", and then one that would return Pages with names containing "Alloy". Hopefully this concept will become a little more obvious once I've described the ContentProviders that are included with the initial release.
  • Page search content provider - Performs a full-text page property search against the editor defined criteria
  • Pages in category content provider - Performs a FindPagesWithCriteria search to find pages tagged with a Category matching the defined criteria
  • Pages with pagename content provider - Performs a FindPagesWithCriteria search to find pages that have a PageName property matching the defined criteria
  • Recently changed pages content provider - Performs a RecentlyChangedPagesFinder search to return the sites recently changed pages
  • Search referrer page search content provider - Performs a full-text page property search against the search term found in the user's http header. If you were to combine this with a Visitor Group that looks for referrals from Google, Bing, other Search engine then you can easily replicate the referrer search functionality Allan Thraen blogged about here

Last edited May 12, 2011 at 9:59 PM by ev2000, version 2

Comments

No comments yet.