Si può usare il motore di raccomandazione Dynamic Yield per riproporre i risultati di un consiglio senza che Dynamic Yield ne faccia il rendering, tramite un'API lato client. Ciò consente di controllare come visualizzare un consiglio al posto di proporre una raccomandazione nell'HTML tramite una campagna di raccomandazione. In più, si possono aggiungere filtri in tempo reale per abilitare risultati live basati sui dati ottenuti all'interno di una sessione (ad esempio, mostrando prodotti con un prezzo superiore all'articolo attualmente visualizzato o elementi proposti in base alla selezione esplicita del visitatore).
I risultati verranno presentati come set di prodotti in formato JSON.
Tieni presente quanto segue prima di fornire consigli tramite API lato client:
- sebbene l'API lato client ti consenta di implementare i consigli senza una campagna, ti consigliamo comunque di inserirli all'interno di una variante. In questo modo, in seguito potrai eseguire test, utilizzare un gruppo di controllo per misurare l'impatto e indirizzare algoritmi diversi per differenti tipi di pubblico, senza scrivere frammenti di codice sul tuo sito.
- Nel report sui consigli: i dati di raccomandazione vengono attribuiti al tipo di pagina "Altro", indipendentemente dalla pagina su cui vengono proposti i consigli.
Fornire consigli tramite API lato client
Creare una strategia per chiamate tramite API
- Vai su Asset › Strategie.
- Crea una strategia di raccomandazione e attiva l'opzione "Usa tramite una chiamata API (avanzata)" per attivare le impostazioni della strategia.
- Scegli il numero di articoli che desideri che l'API restituisca (di solito, il numero degli elementi che intendi renderizzare).
- Salva la strategia.
- Nell'elenco delle "Strategie di raccomandazione", dal menu "Altre opzioni", seleziona "Incorpora codice", quindi copia lo snippet dell'API.
- Modifica l'API RecommendationWidgetData come richiesto. Per ulteriori informazioni, continua a leggere. Puoi anche utilizzare questa API in aggiunta all'API che raccoglie i dati con filtro di raccomandazione in tempo reale a cui aggiungere regole di filtro live per selezionare i risultati in base ai dati ottenuti all'interno della sessione.
- Incolla il codice in una campagna dotata di personalizzazione dei codici per eseguirlo sugli utenti interessati.
- Lo puoi implementare cliccando sulle prestazioni dei consigli utilizzando le raccomandazioni. API RegisterElements. Per ulteriori informazioni, continua a leggere.
Rendering di consigli o contenuti dinamici
Esegui il rendering del contenuto o del consiglio dinamico definito da un nome o un ID. Ciò vale solo per le campagne con località impostata su "Incorpora con il codice":
Sintassi
DYO.smartObject(smartObjectId, props)
Parametri:
- smartObjectID: ID o nome del contenuto dinamico o del consiglio
-
props:
Proprietà di rendering:
target: ID selettore utilizzato come target del tag renderizzato
afterRenderCallback: una funzione opzionale da eseguire una volta renderizzato l'articolo
Esempio:
DYO.smartObject('Car Ad', {
target: 'car_ad_div_id',
inline: true
});
Riportare i dati del widget di raccomandazione
I risultati vengono restituiti come set di prodotti in formato JSON. Anche questa API richiede di tenere traccia del widget di raccomandazione come descritto di seguito.
Sintassi
DYO.recommendationWidgetData(id, opts, callback)
Parametri:
- id: l'ID della strategia da utilizzare durante il rendering dei consigli.
-
opts: parametri opzionali
- context: il contesto della pagina ripreso della pagina corrente, a meno che non si specifichi un contesto diverso in questo spazio.
- maxProducts: sostituisce il valore del "numero di articoli" dalla schermata di configurazione della strategia.
- exclude: un array di SKU o group_ID da escludere dai risultati della raccomandazione. Spesso si usa per impedire la visualizzazione dello stesso elemento più di una volta in una pagina con più widget di consigli (questa opzione non è disponibile per le strategie visualizzate di recente, che non usano questa funzione di rimozione degli oggetti).
- realtimeRules: aggiungi regole di filtro in tempo reale per abilitare risultati live incentrati sui dati ottenuti durante una sessione. Le informazioni sulle casistiche d'uso e sui dati dei filtri in tempo reale sono disponibili nella sezione dedicata ai dati con filtro per riproporre i consigli in tempo reale.
- distinct: quando indica "true", non proporrà SKU che fanno parte di altri widget di raccomandazione su questa pagina specifica.
- callback: funzione di callback da eseguire una volta proposti i dati sui consigli.
Esempio di chiamata:
// passa manualmente il contesto del prodotto alla richiesta
DYO.recommendationWidgetData(12345, {
exclude: {
'group_id': ['127829', '1217317', '1247581']
},
context: {
'lng': 'en_GB',
'type': 'PRODUCT',
'data': ["1253851-001"]
}},
function(err, data) {
if (err) {
// gestione degli errori
}
var rcomData = data;
});
Example Response:
{
"wId": 3197,
"name": "TOP_N", // nome della strategia
"expData": {
"varId": null,
"expId": null
},
"fId": 543,
"fallback": true, // almeno uno degli elementi ha utilizzato un fallback
"slots": [
{
"item": {
"entity_id": "330367",
"color": "1349",
"product_url": "......html",
"color_prod_img": "https:.....3.jpg",
"publish_time": "2019-07-05T03:22:08",
"flag_img_url": "NONE",
"size_label": "38",
"color_image": "https://tropicalflowerdress.......jpg",
"size": "1899",
"category": "dresses",
"related_colors_label": "string",
"title": "great flower dress",
"related_colors": "619,628,3064,3070,3133",
"color_label": "flower",
"item_group_id": "620",
"category1": "women",
"sku": "6510120",
"description": "il miglior abito a fiori tropicali dell'universo",
"price": 199,
"in_stock": true,
"categories": [
"donne",
"abiti"
],
"dy_display_price": "199",
"name": "abito a fiori tropicali",
"url": "https://www.tropicdresses........html",
"category4": "",
"flag": "",
"tier_prices": "NESSUNO",
"thumbnail_url": "https://tropicdresses......jpg",
"image_url": "https://tropicdresses......jpg",
"keywords": [
"donne",
"abiti",
],
"group_id": "33112327",
"quantity": "2"
},
"fallback": true, //questo articolo usufruisce di una strategia di fallback
"strId": 1,
"md": {}
},
{
"item": {
"entity_id": "330368",
"color": "1349",
"product_url": "......html",
"color_prod_img": "https:.....4.jpg",
"publish_time": "2019-07-06T03:21:00",
"flag_img_url": "NESSUNO",
"size_label": "38",
"color_image": "https://tropicalflowerpants.......jpg",
"size": "1899",
"category": "pantaloni",
"related_colors_label": "stringa",
"title": "fantastici pantaloni a fiori",
"related_colors": "619,628,3064,3070,3133",
"color_label": "fiore",
"item_group_id": "534",
"category1": "donne",
"sku": "6510145",
"description": "i migliori pantaloni a fiori tropicali dell'universo",
"price": 89,
"in_stock": true,
"categories": [
"donne",
"pantaloni"
],
"dy_display_price": "89",
"name": "pantaloni con fiori tropicali",
"url": "https://www.tropicpants........html",
"category5": "",
"flag": "",
"tier_prices": "NESSUNO",
"thumbnail_url": "https://tropicpants......jpg",
"image_url": "https://tropicpants......jpg",
"keywords": [
"donne",
"pantaloni",
],
"group_id": "33112347",
"quantity": "1"
},
"fallback": false, // questo articolo si avvale della strategia scelta
"strId": 1,
"md": {}
},
]
}
Dati con filtro per riproporre i consigli in tempo reale
Vedi articolo Dati con filtro per riproporre i consigli in tempo reale
Tieni traccia del widget di raccomandazione
Per tenere traccia di un widget di raccomandazione che hai aggiunto manualmente al tuo sito tramite l' API RecommendationWidgetData , devi assicurarti che Dynamic Yield lo riesca a monitorare. I risultati JSON di RecommendationWidgetData si usano per configurare il sistema di tracciamento.
Sintassi
DYO.recommendations.registerElements(el);
Utilizzo
- Aggiungere i seguenti attributi all'elemento DOM che contiene il widget con i consigli:
<div data-dy-widget-id="WIDGET_ID_HERE" data-dy-feed-id="FEED_ID_HERE"> <div data-dy-product-id="PRODUCT_SKU_HERE" data-dy-strategy-id="STRATEGY_ID_HERE">...</div> <div data-dy-product-id="PRODUCT_SKU_HERE" data-dy-strategy-id="STRATEGY_ID_HERE">... </div> .
- widget id— ilWiD derivante dalla risposta JSON. Questo è l'ID della strategia.
- feed id— ilFiD derivante dalla risposta JSON.
- strategy id— loSTRiD derivante dalla risposta JSON (si trova sotto ogni "slot"). Rappresenta il tipo di strategia di ogni slot.
- product id— loskudi ogni prodotto nella risposta JSON.
- Prova a eseguire la seguente chiamata API:
Dove el è l'elemento DOM con l'attributo ID del widget (id-dati-widget-id).DYO.recommendations.registerElements(el);
Mostrare tutte le risposte del widget con i consigli
Propone tutti i prodotti restituiti da tutti i widget di raccomandazione sulla pagina.
Sintassi
DYO.recommendations.getLoadedWidgets()
La risposta è una matrice di risultati con i dat del widget che ripropone i consigli per tutti i widget di raccomandazione inseriti in una pagina.