Boost Fertility New Invention Ups Success Rates.pdf
Personalized content delivery with plone
1. Interaktiv GmbH | Creative Information Solutions
PERSONALIZED CONTENT
DELIVERY WITH PLONE
1 / 13
2. WHO WE ARE
Johanna Marcel Thomas
Full service agency since 1998, Cologne/Germany
Open source development, content management,
online marketing
Websites, portals, intranets
Spezialisation in health care and non-profit
organizations
2 / 13Interaktiv GmbH | Creative Information Solutions
Stehe hier für die Interaktiv GmbH, und möchte uns daher kurz vorstellen.
Wir sind seit 1998 am Markt, haben unseren Sitz in Köln und beschäftigen uns in erster Linie mit Open Source Entwicklung, mit Content Management Systemen und allen Spielarten des Online Marketings. In der Open Source Entwicklung haben wir 7 Entwickler, die festangestellt oder als freiberufliche Mitarbeiter seit langer Zeit für uns tätig sind.
We are a Cologne Germany-based web agency specializing in sophisticated content management based on Plone. We build state-of-the art web applications, serving customers in Germany and abroad.
Sponsored Plone conference 2014 in Bristol
Personalisierung ist zur Zeit ein Buzz-Wort im Online-Marketing.
Jeder versteht etwas anderes darunter (A/B-Testing, personalisierte Werbung ausliefern, meistens bezogen auf E-Commerce; persönliche Anrede in Newslettern, Recommendation Engine zur Empfehlung passender Produkte)
Plone as a content management system for websites still follows a traditional one-size-fits-all approach: with some exceptions (we will see those later during the talk), the same website content is delivered to all website users.
By contrast, modern marketing approaches entail at least segmented if not personalized content delivery to users.
Why show users a newsletter subscription portlet if they already subscribe to the newsletter?
If we already know from analytics data, referral data or CRM data what a user is looking for, what her interests are and where she is from, why don’t we show her the content truly relevant to her?
Visitor navigates through website, searches, “does things”
CMS or external tool loads profile data, session data etc. and gives trigger in real-time
CMS dynamically generates content for this user
Erkennung der Browsersprache -> Auslieferung von lokalisiertem Content
Anpassung von Portlets nach eingeloggt/nicht eingeloggt
Gruppenportlets
Funktionen wie z.B. plone.app.discussion einstellbar nach Nutzergruppe.
Zeitbasierte Veröffentlichung (Freigabe- und Ablaufdatum)
Viele der gezeigten Beispiele lassen sich natürlich auch in Plone integrieren (z.B. Chat online/offline). Es sind dann aber Einzelmaßnahmen. Es gibt keine zentrale Verwaltung und Steuerung von Personalisierungsmaßnahmen.
Viele der gezeigten Beispiele lassen sich natürlich auch in Plone integrieren (z.B. Chat online/offline). Es sind dann aber Einzelmaßnahmen. Es gibt keine zentrale Verwaltung und Steuerung von Personalisierungsmaßnahmen.
Prinzipien:
keine Datenspeicherung in Plone selbst
Die meisten externe Datenquellen müssen in Realtime abgefragt warden, historische Daten sind meistens nicht gewünscht.
Nicht auf ein einziges “Partnersystem” (wie z.B. Google Analytics) setzen, sondern “offen” sein für beliebige externe Datenquellen, da jeder Kunde mit anderen System arbeitet.
Datenquelle-Beispiel: Analytics Real Time Reporting API
https://developers.google.com/analytics/devguides/reporting/realtime/v3/
Dimensions and Metrics
User : rt:userType , rt:activeUsers
Time : rt:minutesAgo
Traffic Sources :rt:referralPath rt:campaign rt:source rt:medium rt:trafficType rt:keyword
Goal Conversions
rt:goalId rt:goalXXValue rt:goalValueAll rt:goalXXCompletions rt:goalCompletionsAll
Platform / Device :rt:browser rt:browserVersion rt:operatingSystem rt:operatingSystemVersion rt:deviceCategory
rt:mobileDeviceBranding
rt:mobileDeviceModel
Geo : rt:country rt:region rt:city rt:latitude rt:longitude
Page Tracking : rt:pagePath rt:pageTitle rt:pageviews
App Tracking : rt:appName rt:appVersion rt:screenName rt:screenViews
Event Tracking : rt:eventAction rt:eventCategory rt:eventLabel rt:totalEvents
Persona has a whole story behind it, name, picture, properties - gained from analytics.
We know the concept of personas from user-centric design.
Does everyone know what tiles and portlets are?
Portlets: boxes, usualy in left or right column, for example navigation portlet
Tiles: Plone‘s “new“ concept for editing content in place with a visual editor. The guys working on Mosaic and collective.cover are doing a great job there.
Backend architecture: plone.app.blocks 2.1.2 "rendering model" und "Tiles"
https://pypi.python.org/pypi/plone.app.blocks
Performance: Daten aus Drittsystem in Echtzeit,Auslieferung der richtigen Variante;
Datenspeicherung doch zumindest für einige „interne“ Daten notwendig? In relationaler Datenbank?Datenschutz
Wie kann ein User Interface aussehen?
Denken wir zu sehr Website-zentriert, also für einen Kanal? Müsste das System als Publishing-Plattform in der Lage sein, den personalisierten Content über REST-Schnittstelle anderen Systemen zur Verfügung zu stellen?