Magnolia 5.7 reached extended end of life on May 31, 2022. Support for this branch is limited, see End-of-life policy. Please note that to cover the extra maintenance effort, this EEoL period is a paid extension in the life of the branch. Customers who opt for the extended maintenance will need a new license key to run future versions of Magnolia 5.7. If you have any questions or to subscribe to the extended maintenance, please get in touch with your local contact at Magnolia.
This tutorial shows you how to create a custom cookie trait without writing any Java code. All you need is to configure a custom cookie trait and write some FreeMarker and JavaScript code.
Example use case
In this tutorial we use a common business use case as an example. We create a custom cookie that is used to personalize a component based on the number of times a user visits a specific page. On the assumption that more page visits mean an increasing interest in our product, we progressively display personalized components offering incentives and discounts to entice the user to make a purchase.
More specifically, in the tutorial:
- A cookie named
visits
is set. - The cookie keeps count of the number of times a users visits the page.
- On the visitor's first visit no personalized component displays.
- On the second and subsequent visit different personalized components offering progressively larger discounts display.
Cookies can be used to create just about any kind of personalization feature and you can adapt the example to suit your needs or use it as inspiration for your own custom cookies.
Tutorial structure and work method
The tutorial uses the Enterprise Edition Pro demo bundle and is divided into two sections:
- Configuring a custom cookie trait: This is configured in the JCR in the Configuration app. It cannot be configured in YAML.
- Setting and reading a custom cookie: This is configured in a light module on the file system.
The best way to learn is to do it yourself, so we recommend that you recreate the tutorial from scratch and start by installing an EE Pro bundle.