[DOCU-647] Personalization tips Created: 30/Nov/15  Updated: 04/Jan/16  Resolved: 22/Dec/15

Status: Closed
Project: Documentation
Component/s: content
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Neutral
Reporter: Antti Hietala Assignee: Ruth Stocks
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Template:
Acceptance criteria:
Empty
Task DoR:
Empty
Date of First Response:

 Description   

Here are some tips for working with personalization. They could go to a "Troubleshooting" or "Tips" section in personalization documentation.

1) First matching variant wins. If two or more variants match the current trait rules then Magnolia serves the first variant. The position of the variant under the parent page is therefore significant. This is important to understand if you wonder why your variant is not served. Is there another matching variant higher up? Move your variant higher.

2) A page and its variants are linked via UUID. Each variant has a mgnl:variationOf property whose value is the original page UUID. The property links a variant to its origin. This is important to understand when you export variants to other Magnolia instances for testing. The page you export from and the page you import to must have the same UUID, meaning the original page must exist in the target instance. Publish or export the original page to the target environment first.

3) Pages that have variants have a special mixinType mgnl:hasVariant. You can only import variants to a page that already has variants. The variants node must exist under the target page. You cannot import a variant under a page that has no existing variants as it won't have the necessary mixinType mgnl:hasVariant.



 Comments   
Comment by Philip Mundt [ 01/Dec/15 ]

ahietala I double checked the code and unfortunately it's not true what I said: 1) doesn't happen.
Instead the system behaves like observed:

  • A set of voters will – if all votes are true – always return 1.
  • Even when combining segments and rule sets – under the hood – will both be combined to another voter set and when true, they will return 1.
  • This results in the evaluation returning the first variant that matches at all (even if it's only one country vote).

There is no so such thing as weighed voters. I thought we had it because we use the default AndVoting. But the name is misleading: The javadoc says Return the maximum vote but only if all voters voted positive.. And that's what happens during eval. So add-up-votes are currently not supported by the system. The only thing that can be done, is adding a level to a voterset, i.e. weighing a rule set higher than a segment (not in the UI though atm).

Side note: all the voters used in personalization are BoolVoter, they will return 1 if true, 0 if false. (To explain how the max vote will always be 1)

Comment by Antti Hietala [ 01/Dec/15 ]

Changed ticket description per Philip's notes above.

Comment by Ruth Stocks [ 22/Dec/15 ]

Documented at https://documentation.magnolia-cms.com/display/DOCS/Personalization#Personalization-Varianttipsandtroubleshooting

Generated at Mon Feb 12 01:11:06 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.