Author: Sigurd Magnusson, firstname.lastname@example.org
Websites work best when visitors find material that is relevant to them. But that relevant content varies from one visitor to the next, and is usually a small potion of the overall website content. Attributes of visitors like their geographical location, entrance path, pages they browse, browser/OS/device, search queries they enter can be inspected and provide ideas on the content they are seeking. A module can be built that lets content authors tag pieces of content, inspects attributes of visitors, and attempts to match content relevant to an individual visitor dynamically.
For example, a homepage could be set up with 5 large graphical banners. One of them could be tagged “New York” and another “organic gardening”, with the other three untagged. The module could be configured to show visitors with a location proximate to New York that banner, visitors who came in via a Google Query for “organic” or “gardening” another banner, and all other visitors would get any one of the remaining three banners at random.
The module would provide a base level of code functionality and CMS user interface, but each implementation would be expected (at a code level) to require customisation to define the matching logic; as no two websites are likely to want their content personalisation and targeting done the same.
Finally, some manner of reporting and/or logging of the performance of the personalisation is desired. The system should give information as to whether people are being given personalised content, and whether they show a higher rate of clicking a given banner. This may be done directly via SilverStripe or, perhaps better, achieved via third-party tools like Google Analytics.
Last edited by chillu,