Page tree
Skip to end of metadata
Go to start of metadata


Personalization refers to adapting content to a particular user according to his or her personal preferences, needs and capabilities. In order to do so, you first select a set of traits of a visitor or a visit, then compose rules using these traits to define what content is presented to which visitors and when.

Modules

Magnolia's Personalization feature consists of the following modules.

  • Integration: Core personalization support for creating page variants and fields for selecting traits and audiences.

  • Components: Support for creating component variants.

  • Traits: Example traits country, date, cookie and visitor.
  • Preview app: App for testing content delivery by impersonating a visitor.
  • Segments app: App for grouping visitors into segments.
  • Personas app: App for creating hypothetical visitors who represent your target audience.
  • Samples: Example personas and segments.

Installing

Maven is the easiest way to install the module. Add the following to your bundle:

<dependency>
  <groupId>info.magnolia.personalization</groupId>
  <artifactId>magnolia-personalization-integration</artifactId>
  <version>2.0.4</version>
</dependency>

<dependency>
  <groupId>info.magnolia.personalization</groupId>
  <artifactId>magnolia-personalization-components</artifactId>
  <version>2.0.4</version>
</dependency>

<dependency>
  <groupId>info.magnolia.personalization</groupId>
  <artifactId>magnolia-personalization-traits</artifactId>
  <version>2.0.4</version>
</dependency>

<dependency>
  <groupId>info.magnolia.personalization</groupId>
  <artifactId>magnolia-personalization-preview-app</artifactId>
  <version>2.0.4</version>
</dependency>

<dependency>
  <groupId>info.magnolia.personalization</groupId>
  <artifactId>magnolia-personalization-segmentation-app</artifactId>
  <version>2.0.4</version>
</dependency>

<dependency>
  <groupId>info.magnolia.personalization</groupId>
  <artifactId>magnolia-personalization-personas-app</artifactId>
  <version>2.0.4</version>
</dependency>

<dependency>
  <groupId>info.magnolia.personalization</groupId>
  <artifactId>magnolia-personalization-samples</artifactId>
  <version>2.0.4</version>
</dependency>

Configuration

Components submodule

Nested variants occur when a page variant contains component variants. Control the ability for editors to create nested variants using the allowNestedVariants property on the module level configuration. 

PropertyDescription

allowNestedVariants

optional, default is false 

Allows you to create component variants inside a page variant if set to true .

Traits submodule

The traits submodule provides four traits: date, country, visitor and cookies. Each trait has a configuration which can be adjusted.

Country trait

By default the country trait will track anonymous users by creating a JSESSIONID. The class StorageAwareTraitCollector offers two options for scope.

PropertyDescription

traitStorageClass

required, default is info.magnolia.personalization.trait.storage.StorageAwareTraitCollector$SessionScopedTraitStorage  

Allows you to control the scope of how anonymous users are tracked. 

Use info.magnolia.personalization.trait.storage.StorageAwareTraitCollector$RequestScopedTraitStorage to disable the creation of JSESSIONID.

Usage