Förhandskrav
För att kunna slutföra lektionerna i det här avsnittet måste du först slutföra lektionerna i Konfigurera taggar och Lägg till identitetstjänsten.
Lägg till fördolt målkodfragment
Innan vi börjar måste vi göra en liten uppdatering av taggens inbäddningskoder. När taggens inbäddningskoder läses in asynkront kan sidan slutföra återgivningen innan målbiblioteket har lästs in fullständigt och innehållsväxlingen har utförts. Detta kan leda till det som kallas"flimmer", där standardinnehållet visas kort innan det ersätts av det anpassade innehåll som anges av Target. Om du vill undvika denna flimmer rekommenderar vi att du hårdkodar ett särskilt fragment som döljs innan taggarnas asynkrona inbäddningskoder.
Detta har redan gjorts på Luma-webbplatsen, men vi gör detta på exempelsidan så att du förstår implementeringen. Kopiera följande kodrader:
<script>
//prehiding snippet for Adobe Target with asynchronous tags deployment
;(function(win, doc, style, timeout) {
var STYLE_ID = 'at-body-style';
function getParent() {
return doc.getElementsByTagName('head')[0];
}
function addStyle(parent, id, def) {
if (!parent) {
return;
}
var style = doc.createElement('style');
style.id = id;
style.innerHTML = def;
parent.appendChild(style);
}
function removeStyle(parent, id) {
if (!parent) {
return;
}
var style = doc.getElementById(id);
if (!style) {
return;
}
parent.removeChild(style);
}
addStyle(getParent(), STYLE_ID, style);
setTimeout(function() {
removeStyle(getParent(), STYLE_ID);
}, timeout);
}(window, document, "body {opacity: 0 !important}", 3000));
</script>
Öppna exempelsidan och klistra in den precis före taggens inbäddningskod enligt bilden nedan (oroa dig inte om radnumren är olika). I den här skärmbilden har det fördolda fragmentet miniatyrbildats:
Läs in exempelsidan igen. Du kommer att märka att sidan kommer att vara dold i tre sekunder innan den visas. Det här beteendet är tillfälligt och försvinner när du har distribuerat Target. Det här fördolda beteendet styrs av två konfigurationer i slutet av fragmentet, som kan anpassas men som oftast finns kvar i standardinställningarna:
body {opacity: 0 !important}
anger den CSS-definition som ska användas för pre-hide tills Target läses in. Som standard döljs hela brödtexten. Om du har en konsekvent DOM-struktur med ett enkelt identifierbart behållarelement som omsluter allt innehåll under navigeringen, till exempel, och du aldrig vill testa eller anpassa navigeringen, kan du använda den här inställningen för att begränsa det som döljs till behållarelementet.3000
som anger timeoutinställningen för fördöljning. Som standard visas sidan om Target inte har lästs in på tre sekunder. Detta bör vara extremt sällsynt.
Mer information och information om hur du hämtar det icke-minifierade fördolda fragmentet finns i Adobe Target-tillägget med en asynkron distribution .
Lägg till måltillägget
Adobe Target-tillägget stöder implementeringar på klientsidan med Target JavaScript SDK för den moderna webben, at.js. Kunder som fortfarande använder Target:s äldre bibliotek, mbox.js, bör uppgradera till at.js 2.x för att kunna använda taggar.
Tillägget Target v2 består av två huvuddelar:
-
Tilläggskonfigurationen, som hanterar huvudbiblioteksinställningarna
-
Regelåtgärder för att göra följande:
- Load Target (at.js 2.x)
- Lägg till parametrar i sidinläsningsbegäranden
- Lägg till parametrar i alla begäranden
- Begäran om inläsning av brandsida
I den här första övningen ska vi lägga till tillägget och titta på konfigurationerna. I senare övningar kommer vi att använda åtgärderna.
Lägga till tillägget
-
Gå till Extensions > Catalog
-
Skriv
target
i filtret för att snabbt hitta Adobe Target-tilläggen. Det finns två tillägg - Adobe Target och Adobe Target v2. I den här självstudien används version 2 av tillägget som använder den senaste versionen av at.js (för närvarande 2.x), som är idealisk för både traditionella webbplatser och Single-page-applikationer (SPA). -
Klicka på Install
-
När du lägger till tillägget importeras många, men inte alla dina at.js-inställningar från Target-gränssnittet, enligt bilden nedan. En inställning som inte kommer att importeras är Timeout, som alltid är 3 000 ms efter att tillägget har lagts till. Lämna standardinställningarna för självstudiekursen. Observera, att till vänster visas versionen at.js som levereras med den aktuella versionen av tillägget.
-
Klicka på Save to Library
För tillfället gör inte Target något, så det finns inget att validera.
Läs in mål och starta sidinläsningsbegäran
Marknadsförarna använder Target för att styra besökarupplevelsen på sidan när de testar och målar innehåll. På grund av den här viktiga rollen för sidvisningen bör du läsa in Target så tidigt som möjligt för att minimera påverkan på sidsynligheten. I det här avsnittet läser vi in JavaScript-biblioteket Target, at.js, samt utlöser sidinläsningsbegäran (kallas"global mbox" i tidigare versioner av at.js).
Du kan använda regeln All Pages - Library Loaded
som du skapade i lektionen Lägg till dataelement, regler och bibliotek för att implementera Target eftersom den redan aktiveras så tidigt som möjligt vid sidinläsning.
Att läsa in mål
-
Gå till Rules i den vänstra navigeringen och klicka sedan på
All Pages - Library Loaded
för att öppna regelredigeraren -
Klicka på plustecknet
-
Välj Extension > Adobe Target v2
-
Välj Action Type > Load Target
-
Klicka på Keep Changes
När åtgärden Load Target
har lagts till läses at.js in på sidan. Inga Target-begäranden utlöses dock förrän vi lägger till åtgärden Fire Page Load Request
.
Starta sidinläsningsbegäran
-
Klicka på plustecknet
-
Välj Extension > Adobe Target v2
-
Välj Action Type > Fire Page Load Request
-
Det finns vissa konfigurationer tillgängliga för sidinläsningsbegäran som gäller huruvida sidan och CSS-väljaren ska döljas eller inte. De här inställningarna fungerar tillsammans med det fragment som är hårdkodat på sidan innan det döljs. Lämna standardinställningarna.
-
Klicka på Keep Changes
-
Den nya åtgärden läggs till i sekvens efter åtgärden
Load Target
och åtgärderna kommer att köras i den här ordningen. Du kan dra och släppa åtgärderna för att ordna om ordningen, men i det här scenariot måsteLoad Target
vara föreFire Page Load Request
. -
Klicka på Save to Library and Build
Validera sidinläsningsbegäran
Nu när du har lagt till tillägget Target v2 och utlöst åtgärderna Load Target
och Fire Page Load Request
bör det finnas en sidinläsningsbegäran på alla sidor där taggegenskapen används.
Så här validerar du åtgärderna Läs in mål och Läs in brandsida
-
Läs in exempelsidan igen. Du bör inte längre se en fördröjning på tre sekunder innan sidan syns. Om du läser in exempelsidan med protokollet
file://
bör du göra det här steget i Firefox- eller Safari-webbläsare eftersom Chrome inte startar en Target-begäran närfile://
-protokollet används. -
Öppna Luma-webbplatsen
-
Kontrollera att felsökaren mappar taggegenskapen till din-utvecklingsmiljö, vilket beskrivs i tidigare lektion
-
Gå till fliken Sammanfattning i Felsökning
-
Bekräfta att
Target
visas under rubrikenExtensions
i avsnittetLaunch
-
I avsnittet
Target
bekräftar du att din at.js-biblioteksversion visas -
Till sist går du till fliken
Target
, utökar klientkoden och bekräftar att sidinläsningsbegäran visas:
Grattis! Du har implementerat Target!
Lägg till parametrar
Genom att skicka parametrar i Target-begäran får ni kraftfulla funktioner för målinriktning, testning och personalisering. Taggtillägget innehåller två åtgärder för att skicka parametrar:
-
Add Params to Page Load Request
, som lägger till parametrar i sidinläsningsbegäranden (motsvarande metoden targetPageParams())) -
Add Params to All Requests
, som lägger till parametrar i alla Target-begäranden, t.ex. sidinläsningsbegäran plus ytterligare begäranden från åtgärder för anpassad kod eller hårdkodade på din plats (motsvarar metoden targetPageParamsAll() )
Dessa åtgärder kan användas före åtgärden Load Target
och kan ange olika parametrar på olika sidor baserat på dina regelkonfigurationer. Använd funktionen för regelordning som du använde när du ställde in kund-ID:n med identitetstjänsten för att ställa in ytterligare parametrar för händelsen Library Loaded
innan regeln som startar sidinläsningsbegäran.
Add Params to Page Load Requests
.Begäranparametrar (mbox)
Parametrar används för att skicka anpassade data till Target, vilket förbättrar dina personaliseringsfunktioner. De är idealiska för attribut som ändras ofta under en webbläsarsession, t.ex. sidnamn, mall osv. och kvarstår inte.
Låt oss lägga till dataelementet Page Name
som vi skapade tidigare i lektionen Lägg till dataelement, regler och bibliotek som en begärandeparameter.
Så här lägger du till begärandeparametern
-
Gå till Rules i den vänstra navigeringen och klicka sedan på
All Pages - Library Loaded
för att öppna regelredigeraren. -
Klicka på plustecknet
-
Välj Extension > Adobe Target v2
-
Välj Action Type > Add Params to Page Load Request
-
Ange
pageName
som Name -
Klicka på ikonen
-
Klicka på dataelementet
Page Name
-
Klicka på knappen Select
-
Klicka på Keep Changes
-
Klicka och dra i den vänstra kanten av åtgärden
Add Params to Page Load Request
för att ändra ordningen på åtgärder som den har innan åtgärdenFire Page Load Request
(kan vara före eller efterLoad Target
) -
Klicka på Save to Library and Build
Validera begärandeparametrar
För närvarande är anpassade parametrar som skickas med at.js 2.x-begäranden inte så lätta att se i Felsökning, så vi kommer att använda webbläsarens utvecklingsverktyg.
Verifiera parametern för pageName-begäran
- Läs in Luma-webbplatsen igen och kontrollera att den är mappad till din egen taggegenskap
- Öppna webbläsarens utvecklarverktyg
- Klicka på fliken Nätverk
- Filtrera begäranden till
tt.omtrdc
(eller din CNAME-domän för Target-begäranden) - Expandera avsnittet
Headers
>Request Payload
>execute.pageLoad.parameters
för att validera parametern och värdetpageName
Profilparametrar
Profilparametrar skickas också via Target-begäran, på samma sätt som begärandeparametrar. Profilparametrar lagras emellertid i målets databas för besökarprofiler och kommer att finnas kvar under varaktigheten för besökarens profil. Du kan ange dem på en sida på webbplatsen och använda dem i Target-aktiviteter på en annan sida. Här är ett exempel från en bilwebbplats. När en besökare går till en fordonssida kan du skicka profilparametern "profile.lastViewed=sportscar" för att registrera deras intresse för just det fordonet. När besökaren bläddrar till andra sidor som inte är avsedda för fordon kan du rikta innehåll baserat på det senast visade fordonet. Profilparametrar är idealiska för attribut som sällan ändras eller bara är tillgängliga på vissa sidor
Du skickar inga profilparametrar i den här självstudien, men arbetsflödet är nästan identiskt med det du gjorde när du skickade parametern pageName
. Den enda skillnaden är att du måste ge profilparameternamn ett profile.
-prefix. Så här ser en profilparameter som kallas userType ut i åtgärden Add Params to Page Load Request
:
Enhetsparametrar
Enhetsparametrar är särskilda parametrar som används i Rekommendationer och implementeringar av tre huvudorsaker:
- Som en nyckel för att utlösa produktrekommendationer. Om du till exempel använder en rekommendationsalgoritm som"Personer som visade produkt X, även visade Y", är"X" rekommendationens"nyckel". Det är vanligtvis den produktsku (
entity.id
) eller kategori (entity.categoryId
) som besökaren för närvarande visar. - Samla in besökares beteende för att driva rekommendationer som"Senast visade produkter" eller"De mest visade produkterna"
- Fylla i katalogen Rekommendationer. Rekommendationer innehåller en databas över alla produkter eller artiklar på din webbplats, så att de kan tas med i rekommendationserbjudandet. Om du till exempel rekommenderar produkter vill du vanligtvis visa attribut som produktnamnet (
entity.name
) och bilden (entity.thumbnailUrl
). Vissa kunder fyller i sin katalog med serverdelsflöden, men de kan också fyllas i med enhetsparametrar i Target-begäranden.
Du behöver inte skicka några enhetsparametrar i den här självstudiekursen, men arbetsflödet är identiskt med det du gjorde tidigare när du skickade parametern pageName
för begäran. Ge bara parametern ett namn som är prefix med "entity". och mappa det till det relevanta dataelementet. Observera att vissa vanliga entiteter har reserverade namn som måste användas (t.ex. entity.id för produktsku). Så här skulle det se ut att ange enhetsparametrar i åtgärden Add Params to Page Load Request
:
Lägg till parametrar för kund-ID
Samlingen av kund-ID:n med Adobe Experience Platform Identity Service gör det enkelt att importera CRM-data till Target med funktionen Kundattribut i Adobe Experience Cloud. Det möjliggör även sammanfogning av besökare mellan olika enheter, vilket gör att du kan upprätthålla en konsekvent användarupplevelse när dina kunder växlar mellan sina bärbara datorer och sina mobila enheter.
Du måste ange kund-ID:t i identitetstjänstens Set Customer IDs
-åtgärd innan sidinläsningsbegäran aktiveras. Kontrollera därför att du har följande funktioner på din webbplats:
- Kund-ID måste vara tillgängligt på sidan före taggarna Embed Code
- Tillägget Adobe Experience Platform Identity Service måste vara installerat
- Du måste använda åtgärden
Set Customer IDs
i en regel som utlöses vid händelsen Biblioteksinläsning (överst på sidan) - Använd åtgärden
Fire Page Load Request
i en regel som utlöses efter åtgärden Ange kund-ID
I föregående lektion, Lägg till Adobe Experience Platform identitetstjänst, skapade du regeln All Pages - Library Loaded - Authenticated - 10
för att starta åtgärden Ange kund-ID. Eftersom den här regeln har en Order
-inställning på 10
, anges kund-ID:n innan vår sidinläsningsbegäran aktiveras från All Pages - Library Loaded
-regeln med dess Order
-inställning på 50
. Så du har redan implementerat samlingen med kund-ID:n för Target!
Validera kund-ID
För närvarande är anpassade parametrar som skickas med at.js 2.x-begäranden inte så lätta att se i Felsökning, så vi kommer att använda webbläsarens utvecklingsverktyg.
Verifiera kund-ID:t
-
Öppna Luma-webbplatsen
-
Kontrollera att felsökaren mappar taggegenskapen till din-utvecklingsmiljö, vilket beskrivs i tidigare lektion
-
Logga in på Luma-webbplatsen med inloggningsuppgifterna
test@test.com
/test
-
Återgå till Lumas hemsida
-
Öppna webbläsarens utvecklarverktyg
-
Klicka på fliken Nätverk
-
Filtrera begäranden till
tt.omtrdc
(eller din CNAME-domän för Target-begäranden) -
Expandera avsnittet
Headers
>Request Payload
>id.customerIds.0
för att validera kundens ID-inställningar och värde:
Lägg till parametern för egenskapstoken
Egenskapstoken är en reserverad parameter som används med Target Premium Enterprise User Permissions -funktionen. Det används för att definiera olika digitala egenskaper så att olika medlemmar i en Experience Cloud-organisation kan tilldelas olika behörigheter för varje egenskap. Du kanske till exempel vill att en grupp användare ska kunna konfigurera Target-aktiviteter på din webbplats, men inte i ditt mobilprogram.
Målegenskaperna motsvarar taggegenskaper och analysrapportsviter. Ett företag med flera varumärken, webbplatser och marknadsföringsteam kan använda olika Target-egenskaper, taggegenskap och Analytics-rapporteringsprogram för varje webbplats eller mobilapp. Taggegenskaperna skiljs åt med hjälp av deras inbäddningskoder, Analytics-rapportsviterna skiljs åt med hjälp av deras rapportritets-ID och Target-egenskaperna skiljs åt med deras egenskapstokenparameter.
Egenskapstoken måste implementeras med en anpassad kodåtgärd i taggar med funktionen targetPageParams()
. Om du implementerar flera webbplatser med olika värden för at_property med en enda taggegenskap kan du hantera värdet at_property via ett dataelement.
Här är en valfri övning om du är Target Premium-kund och vill implementera en egenskapstoken i egenskapen Tutorial:
-
Öppna målanvändargränssnittet på en separat flik
-
Gå till Administration > Properties
-
Identifiera den egenskap som du vill använda och klicka på </> (eller skapa en ny egenskap)
-
Kopiera kodfragmentet inom
<script></script>
till Urklipp -
Gå till Rules i den vänstra navigeringen på fliken Taggar och klicka sedan på
All Pages - Library Loaded
för att öppna regelredigeraren. -
Klicka på åtgärden
Core - Custom Code
under Åtgärder för att öppnaAction Configuration
-
Öppna kodredigeraren och klistra in koden från målgränssnittet som innehåller funktionen
targetPageParams()
-
Klicka på knappen Save
-
Markera rutan Execute globally så att
targetPageParams()
deklareras i det globala omfånget -
Klicka på Keep Changes
-
Klicka på Save to Library and Build
at_property
via åtgärden Add Params to Page Load Request fylls parametern i i nätverksbegäran, men Target's Visual Experience Composer (VEC) kan inte identifiera den automatiskt när sidan läses in. Fyll alltid i at_property
med funktionen targetPageParams()
i en anpassad kodsåtgärd.