personalization
Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
personalization [2018/01/24 12:51] dominik |
personalization [2020/06/17 09:50] (current) amil |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== Personalization with FINDOLOGIC ===== | + | ===== Personalization with Findologic ===== |
**With this short manual you can easily learn how to boost certain products based on user information //provided by a webshop.//** | **With this short manual you can easily learn how to boost certain products based on user information //provided by a webshop.//** | ||
Line 7: | Line 7: | ||
==== Boosting results per user ==== | ==== Boosting results per user ==== | ||
- | FINDOLOGIC provides an interface to boost certain products based on their attributes so they are ranked higher in the search results. \\ | + | Findologic provides an interface to boost certain products based on their attributes, so they are ranked higher in the search results. \\ |
The interface can be used for many different purposes: | The interface can be used for many different purposes: | ||
* Boost products from the preferred vendor or with the favorite color based on data from personalization providers. | * Boost products from the preferred vendor or with the favorite color based on data from personalization providers. | ||
- | * Boost products for men / women based on the user profile of the currently logged in users. | + | * Boost products for men / women based on the user profile of the currently logged-in users. |
* Boost new products when searching from a blog page where the latest trends for the new season are described. | * Boost new products when searching from a blog page where the latest trends for the new season are described. | ||
Line 38: | Line 38: | ||
---- | ---- | ||
- | ==== How to apply boosts ==== | + | ==== How to apply boosts ==== |
- | The boosts can be applied by adding //hidden input fields// to the search form that contain the //attribute//, //attribute value// and a //boost factor (weight)//. **This must happen on the shop side.** The fields can be injected using Javascript or rendered server side, as long as they are available before the search form is submitted. | + | The boosts can be done via a //hidden input fields// or directly within the //API-request//. |
+ | |||
+ | For the first option, a hidden input field that contains the //attribute//, //attribute value// and a //boost factor (weight)// need to be added to the search form. **This must happen on the shop side.** The fields can be injected using JavaScript or rendered server side, as long as they are available before the search form is submitted. | ||
+ | |||
+ | To boost within the API-request the //attribute//, the //attribute value// and the //boost factor// needs to be attached to the request which is sent. How this is done can be looked up [[integration_documentation:request#push_attributes|in our request documentation.]] | ||
The actual attributes and weights may be fetched from the current user's profile or a personalization provider, but can also be static depending on the current page. | The actual attributes and weights may be fetched from the current user's profile or a personalization provider, but can also be static depending on the current page. | ||
- | <note>For entirely static boosts the FINDOLOGIC push rules are better suited.</note> | + | <note>For entirely static boosts the Findologic push rules are better suited.</note> |
- | The //attribute// and //attribute value// need to **exactly match the attributes in the FINDOLOGIC export** (not the display name in the filter configuration). | + | The //attribute// and //attribute value// need to **exactly match the attributes in the Findologic export** (not the display name in the filter configuration). |
A constant factor of 1 is added to the weight, this value is then multiplied with the score of every matching result. The weight may be any non-negative number, where: | A constant factor of 1 is added to the weight, this value is then multiplied with the score of every matching result. The weight may be any non-negative number, where: | ||
+ | * ''weight<0'' means a //decreased score//. | ||
* ''weight=0'' means that the resulting //score will stay the same// ((score*(0+1) = score.)) | * ''weight=0'' means that the resulting //score will stay the same// ((score*(0+1) = score.)) | ||
* ''weight>0'' means an //increased score//. | * ''weight>0'' means an //increased score//. | ||
Line 55: | Line 60: | ||
- | For example ''pushAttrib[gender][female]=5.0'' will multiply the scores of all results matching the attribute ''gender=female'' by a factor of **5+1 = 6**. | + | For example ''pushAttrib[gender][female]=5.0'' will multiply the scores of all results matching the attribute ''gender=female'' by a factor of **5+1 = 6**. |
+ | |||
+ | Negative values will push products down to the end of the product listing. | ||
+ | |||
+ | **We recommend using weights between -0.9 and 3.** | ||
- | //We recommend using weights between 1 and 3.// | + | <note important>Values below -0.9 are automatically turned into -0.9 due to technical constraints.</note> |
- | <note important>The number of results stays the same, only the order of results is changed. \\ This also means that the available filters do not change when boosting.</note> | + | <note important>The number of results stays the same, only the order of results is changed.</note> |
\\ | \\ |