Best practice e limitazioni di Visual Experience Composer

Per garantire che le esperienze funzionino come previsto, segui le best practice quando utilizzi Adobe Target Visual Experience Composer (VEC). Presta attenzione a suggerimenti e limitazioni chiave per massimizzare le prestazioni ed evitare problemi comuni.

Best practice section_86CF28C99CFF40329E4CBAFE4DD78BB4

Di seguito sono riportate le best practice per l’utilizzo del Compositore esperienza visivo:

Posiziona il riferimento at.js nella parte superiore della sezione <head> della pagina.

Vedi i dettagli
Se utilizzi anche Visitor API Service, inserisci lo script dell'API visitatore sopra at.js.

È possibile abilitare Enhanced Experience Composer a livello di account (abilitato per tutte le attività create nell'account) o a livello della singola attività.

Vedi i dettagli

Per abilitare Enhanced Experience Composer a livello di account, fare clic su Administration > Visual Experience Composer, quindi attivare il pulsante Enable Enhanced Experience Composer.

Per abilitare Enhanced Experience Composer a livello di attività durante la creazione di un'attività in Visual Experience Composer, fare clic su Configure > Page Delivery, quindi attivare il pulsante Enable Enhanced Experience Composer.

Inserire nell'elenco Consentiti Puoi alcuni indirizzi IP se Enhanced Experience Composer non viene caricato su pagine protette del tuo sito.

Vedi i dettagli

I problemi relativi al caricamento di Enhanced Experience Composer possono essere risolti inserendo nell'elenco Consentiti i seguenti indirizzi IP. Questi indirizzi IP sono per i server Adobe utilizzati per il proxy Enhanced Experience Composer. Sono necessari solo per modificare le attività. I visitatori del tuo sito non hanno bisogno di inserire nell'elenco Consentiti questi indirizzi IP.

Per ulteriori informazioni, vedere Il Compositore esperienza avanzato non carica un URL di controllo qualità interno che non è accessibile nell'IP pubblico in Risoluzione dei problemi relativi al Compositore esperienza avanzato.

Utilizzare ID univoci per gli elementi di primo livello e per tutti gli altri elementi candidati ad attività di test o targeting.

Dettagli

Qualsiasi elemento all’interno dell’elemento body deve avere un ID univoco. Nel caso nuovi elementi vengano inseriti nel corpo e il codice cambi posizione, sarà possibile riconoscere con maggiore facilità almeno gli elementi padre.

Target non richiede ID, ma l'utilizzo degli ID aumenta l'affidabilità delle esperienze create con il Compositore esperienza. Target utilizza i selettori CSS per modificare il contenuto quando viene distribuita l'esperienza. Quando si modifica un'esperienza, Visual Experience Composer ancora il selettore al predecessore più vicino con un attributo ID non nullo all'elemento HTML che si sta modificando. Di conseguenza si consiglia di non utilizzare meccanismi, comprese librerie JavaScript, che impostino o modifichino gli attributi ID HTML. Anche se tali ID potrebbero essere disponibili per il Compositore esperienza Target per la creazione di attività, se JavaScript modifica gli ID, l'ID utilizzato al momento della creazione dell'esperienza potrebbe non essere disponibile durante l'esecuzione dell'esperienza. Se l'ID non è disponibile, l'ancoraggio del selettore all'ID avrà esito negativo.

Denominare le classi CSS in modo che siano facilmente identificabili.

Dettagli

Quando si modificano le classi CSS in Visual Experience Composer, è utile semplificare l'identificazione delle classi utilizzando nomi descrittivi di classi. Questa operazione assicura che vengano modificate le classi CSS corrette e che le pagine vengano visualizzate come previsto.

Non utilizzare la proprietà CSS !important quando nascondi o rimuovi elementi.

Se la proprietà CSS !important è presente, le modifiche apportate da target.js durante la consegna vengono ignorate dalle regole CSS del sito.

Evitare l'uso di tabelle HTML per i layout di pagina.

Dettagli
Target utilizza JavaScript per formattare una pagina. La modifica dei layout basati su tabelle con JavaScript risulta difficoltosa. Inoltre, i layout basati su tabelle potrebbero non essere visualizzati allo stesso modo in tutti i browser. Per ottenere i risultati ottimali, crea i layout di pagina con CSS.

Ridurre al minimo l'utilizzo di iFrame.

Dettagli
È buona prassi ridurre al minimo l’utilizzo di iFrame, semplificare la gestione delle pagine e dei test. Il Compositore esperienza visivo può applicare alcune azioni all’interno di un iFrame, ma alcune, come il ridimensionamento, non funzionano correttamente. Gestire e ridimensionare le pagine che utilizzano più iFrame risulta difficoltoso. Come risultato, il test delle pagine con molti elementi iFrame potrebbe creare problemi.

Dopo la preparazione di DOM, cerca di apportare tutte le modifiche DOM dinamiche il prima possibile.

Dettagli
Se le modifiche non vengono applicate prima dell'applicazione di esperienza da target.js, la consegna del contenuto potrebbe essere interrotta. Questo avviene solo in caso di modifica DOM nella gerarchia di un elemento con targeting.

Utilizzare solo un tag testo normale o immagine negli elementi di ancoraggio.

Dettagli

<a>Anchor Text</a>

O

<a href=""> <img src=""> </img> </a>

Evitare elementi a livello di blocco all'interno di un elemento in linea.

Dettagli
Gli elementi a livello di blocco non devono essere utilizzati all’interno di elementi in linea, ad esempio ancoraggio, estensione e così via. In questo modo gli elementi in linea perderanno altezza e larghezza, pertanto lo strumento di sovrapposizione in Visual Experience Composer potrebbe non funzionare come previsto.

Non utilizzare il tag di base nel sito web per risolvere URL e collegamenti.

Dettagli
Il Compositore esperienza visivo manipola il sito web dietro le quinte utilizzando un server proxy che aggiorna i collegamenti. Se aggiungi un tag di base, gli URL utilizzati dal server proxy verranno risolti nuovamente dal browser e risulteranno interrotti.

Modificare l'HTML per manipolare la struttura DOM può interrompere i selettori.

Dettagli

Ad esempio, se hai eseguito due azioni:

  • Aggiunta di una classe all'elemento 1
  • Modifica del codice HTML dell'elemento 1

Ogni modifica crea un nuovo elemento nel Compositore esperienza visivo. La seconda azione modifica l'elemento 1: se lo elimini, la seconda azione non avrà più niente da modificare, risultando nella mancata applicazione della modifica.

In altre parole, se aggiungi un elemento con testo e modifichi tale elemento con un testo diverso in un'azione separata, l'editor di codice mostrerà entrambe le azioni come elementi distinti. Durante la modifica dell'elemento è stato creato un nuovo elemento, contenente il testo modificato, che modifica l'elemento originale creato. Se elimini l'elemento originale, il testo modificato non sarà in grado di trovare l'elemento modificato e non verrà visualizzato. Il secondo elemento rimarrà nell'elenco senza tuttavia influire sulla pagina, poiché l'elemento da modificare non esiste più.

Vedi Selettori di elementi utilizzati in Visual Experience Composer.

Utilizza i tag <b> e <i> per la formattazione di elementi di testo con l'editor Rich Text.

Dettagli
  • Per il testo in grassetto, utilizza <b> anziché <strong>.
  • Per il testo in corsivo, utilizza <i> anziché <em>.

I tag <strong> e <em> potrebbero causare risultati imprevisti.

Presta attenzione durante la rimozione dei campi modulo.

Dettagli
Alcuni campi del modulo potrebbero essere obbligatori per l’invio. La loro eliminazione potrebbe influenzare gli invii.

Non includere mboxCreate all'interno degli script.

Dettagli
Poiché mboxCreate utilizza document.write, non è consigliabile includere mboxCreate negli script. Per tale scopo, utilizza invece mboxDefine e mboxUpdate.

Non aggiornare un frammento di codice HTML utilizzando Target se è necessario il codice JavaScript per l'inizializzazione.

Dettagli

Quando si esegue un’azione (Modifica HTML) sui componenti della pagina (come cursori, caroselli e così via), la consegna potrebbe apparire interrotta. Il Compositore esperienza visivo esegue l’azione dopo che il componente Pagina è stato creato da JavaScript.

Tuttavia, quando il contenuto della pagina viene distribuito ai visitatori, l'azione viene applicata prima di creare un'istanza del componente. Per questo motivo, la funzionalità di questo componente rischia di interrompersi al momento della distribuzione. La funzionalità dipende dalla natura dello script utilizzato nella relativa pagina per definire il componente.

Se esegui il test della distribuzione ottenendo la prima volta un esito positivo, non è garantito che questa continuerà a funzionare. Può verificarsi una situazione di tipo “race condition”.

  • In presenza di una situazione di tipo "race condition", la consegna funziona a intermittenza.
  • Se non c’è una situazione di tipo "race condition", la consegna funziona sempre.

Sottoponi la tua pagina a test più volte per assicurarti che la distribuzione funzioni come previsto.

Non utilizzare un tag di base nel sito web per risolvere URL e collegamenti.

Dettagli
Quando si utilizza Enhanced Experience Composer, il sito Web viene manipolato dietro le quinte da un server proxy che aggiorna tutti gli URL di collegamento per farli funzionare nel proxy. Se aggiungi un tag di base, tutti questi URL vengono risolti dal browser, in modo che risultino interrotti.

Il testo importante sul sito che può essere utilizzato per il targeting deve essere mantenuto nel codice HTML all'interno di un elemento.

Dettagli

Ad esempio, non puoi eseguire il targeting del testo del carrello nel Compositore esperienza visivo se il tuo codice è simile al seguente:

code language-html
<a href="https://www.botanicchoice.com/shop.axd/Cart">
   <img alt="Shopping Cart"src="/images/ico-cart.gif"></img>
   Shopping Cart:
   <span id="HeaderCartQtyTotal">
      0
  </span>
  Items
  <span id="HeaderCartPriceTotal"></span>
</a>

In questo esempio, nel Compositore esperienza visivo viene selezionato l’intero elemento di ancoraggio, che ha effetti negativi su altri elementi se viene eseguito il targeting.

Non utilizzare top o self variabili nel codice JavaScript.

Dettagli
Quando Enhanced Experience Composer è abilitato, il valore della parte superiore e delle variabili self vengono aggiornati per disabilitare la non compatibilità con iframe. Per aggiungere il busting iframe, utilizza un'intestazione X-frame-options invece dei codici JavaScript personalizzati.

Eseguire sempre il test del sito web all'aggiunta di parametri al caricamento della pagina.

Dettagli

Ad esempio, per aprire www.abc.com, vengono utilizzati i seguenti parametri URL:

www.abc.com?mboxEdit=1&mboxDisable=1

Questi parametri consentono la modifica in un iframe.

Assicurati che il tuo sito web carichi come previsto dopo l'aggiunta di parametri simili.

Assicurarsi che la pagina si apra come previsto in un iframe.

Dettagli

Disattiva le tecniche di busting iframe sul sito web e verifica se il sito web si apre come previsto all’interno di un iframe in una pagina fittizia. Ad esempio:

code language-html
<!DOCTYPE
<html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>
  <iframe src="https://www.homedepot.com"</iframe>
</body>
</html>

Avvertenze section_A0436B7B85BA467FA9DE13A9A40E6A6E

Quando utilizzi Visual Experience Composer per progettare l'attività, considera le seguenti avvertenze.

La funzionalità Move non supporta z-index.

Dettagli
Poiché non è disponibile la funzionalità z-index, l'elemento spostato non può essere spostato sopra un altro elemento. Per ulteriori dettagli, vedi Limitazioni.

La ridisposizione degli elementi influenza il monitoraggio dei clic.

Dettagli

Se un elemento contrassegnato per il tracciamento dei clic viene ridisposto, i percorsi degli elementi ridisposti vengono modificati. Come risultato, verrà eseguito il monitoraggio dei clic per l'elemento nella posizione in cui si trovava l'elemento originale prima della ridisposizione.

Ciò si verifica perché sia il codice per distribuire il contenuto dell'attività sia il codice per tenere traccia dei clic è incluso in un segmento di codice recapitato alla pagina. Se passi a una pagina diversa e imposti il rilevamento dei clic, il codice del contenuto dell'attività e il codice di monitoraggio dei clic vengono recapitati a tale pagina. Se la pagina di rilevamento dei clic ha una struttura simile alla pagina in cui viene eseguito il test, il contenuto del test può anche essere visualizzato nella pagina di rilevamento dei clic.

L'inserimento di un elemento potrebbe non funzionare in un <div> che è una mbox.

Dettagli
Se una mbox contiene un'offerta, l'inserimento di un elemento potrebbe apparire come insertBefore e non come insertAfter, nel caso in cui la mbox non sia implementata correttamente.

Durante la modifica di un elemento padre e figlio, modificare innanzitutto il padre.

Dettagli
Se sostituisci un’azione immagine su un elemento e poi modifichi il testo o il HTML sul relativo elemento padre, possono verificarsi problemi di consegna. Il flusso di lavoro migliore consiste nel modificare l'elemento padre prima di scambiare l'immagine sull'elemento figlio.

Non è possibile selezionare un elemento di pagina che include una mbox come elemento figlio.

Dettagli

Ad esempio, se la pagina contiene:

code language-html
<div>
  <div class="mboxDefault" >
  </div>
  <script>mboxCreate('myMbox');
</div>`

Il div esterno non deve essere selezionato in un'esperienza perché la mbox codificata nella pagina effettua ancora una chiamata a Target e riceve una risposta. Questa risposta interferisce con la risposta prevista per l'elemento di pagina più grande.

Gli IP proxy potrebbero essere bloccati negli ambienti cliente.

Dettagli
Se utilizzi Enhanced Experienced Composer su un sito non attivo, ad esempio un ambiente di gestione temporanea, è possibile che vengano visualizzati timeout ed errori di accesso negato se il sito blocca i RIP.

Limitazioni section_F33C2EA27F2E417AA036BC199DD6C721

Quando lavori con il Compositore esperienza visivo, tieni presente le seguenti limitazioni:

Gestione della compatibilità del Compositore esperienza visivo con Chrome modifiche ai criteri di estensione. ext

Dettagli

A causa dei criteri aggiornati del manifesto V3 in Google Chrome, le estensioni non possono più modificare il DOM originale prima che venga analizzato dal browser. Di conseguenza, alcuni script di sicurezza, come le implementazioni non compatibili con iframe, potrebbero bloccare il caricamento delle pagine nel Compositore esperienza visivo.

Per garantire la compatibilità, questi script devono essere disabilitati in modo condizionale quando la pagina viene caricata nell'iframe Target. Questo processo può essere eseguito senza problemi verificando la presenza dell'oggetto window.adobeVecExtension, inserito da Target durante il caricamento del Compositore esperienza visivo.

I seguenti snippet di codice sono esempi di codice non compatibile con iframe che possono impedire il caricamento della pagina web nel Compositore esperienza visivo:

window.top.location = window.self.location;

top.location.href = self.location.href;

È possibile utilizzare un semplice controllo per verificare se una pagina Web è incorporata in Target. Un frammento di codice deve essere simile al seguente:

code language-none
if(!window.adobeVecExtension) {
    // additional security logic
}

Non puoi spostare un elemento all’esterno di un contenitore seguito da una proprietà CSS.

Dettagli
Un elemento non può essere spostato all’esterno di un contenitore seguito da una proprietà CSS.

Impossibile selezionare l'elemento Button per la ridisposizione.

Dettagli
Impossibile selezionare direttamente Button elementi per la ridisposizione. Per abilitare la ridisposizione, posizionare i pulsanti all'interno di un contenitore più grande.

Sulle mbox sono disponibili solo le offerte di sostituzione.

Dettagli
Azioni come Edit Class e Rearrange non sono consentite all'interno di una mbox.

Evitare di ridisporre e spostare lo stesso elemento.

Dettagli
Se un elemento è stato spostato in un’altra posizione e si seleziona il contenitore principale e si tenta di ridisporre gli elementi secondari, l’elemento spostato non viene modificato e rimane dov’è. La ridisposizione potrebbe non essere visualizzata nel modo desiderato.

L'azione Change Image non funziona su un'immagine in un carosello.

Dettagli

Se, ad esempio, la pagina contiene un carosello con sei immagini e si desidera scambiare un'immagine con la seconda immagine del carosello, l'azione Change Image non funziona.

La soluzione consiste nel selezionare il contenitore principale e utilizzare l'azione Edit HTML per modificare il HTML del carosello per aggiornare l'origine immagine dell'immagine desiderata.

Le immagini non possono essere ridimensionate in una mbox.

Dettagli
Se sostituisci un’immagine in un elemento mbox e tenti quindi di ridimensionarla in base alle dimensioni dell’elemento mbox, il ridimensionamento non è consentito.

Dopo la sostituzione di un'immagine, non è possibile selezionare l'azione Edit.

Dettagli
Dopo la sostituzione dell'immagine, non potete modificare l'URL di Scene7.

Non è possibile modificare gli elementi HTML con un’origine esterna.

Dettagli
Ad esempio: video, tag audio, incorporamento, iFrame, frame.

Il monitoraggio dei clic non funziona per gli elementi di ancoraggio che contengono elementi diversi dai tag di testo normale o immagine.

Dettagli
Ad esempio, il tracciamento dei clic non funziona se l’elemento contiene JavaScript.

Affinché il Compositore esperienza visivo funzioni, le pagine devono accettare i parametri URL.

Dettagli
Alcuni siti eliminano i parametri URL dalle loro pagine. Tuttavia, il Compositore esperienza visivo richiede tali parametri.

Durante l’utilizzo di uno script come parte di HTML, tutte le variabili e le funzioni a cui si accede dall’esterno devono essere dichiarate nello spazio dei nomi della finestra.

Dettagli

Lo script viene eseguito nell'ambito di target.js dopo il caricamento della pagina. Pertanto, qualsiasi variabile o funzione dichiarata localmente non è accessibile dall'esterno del blocco di script.

Errato:

code language-html
<script>
  var myVar = 123;
  function myFunc() {
    //
  }
</script>`

Corretto:

code language-html
<script>
  window.myVar = 123;
  window.myFunc = function() {
    //
  };
</script>

Se si inserisce un'immagine dalla libreria Content (Scene7) e si modifica il HTML, l'URL dell'immagine viene interrotto.

Dettagli

Aggiungi un elemento di ancoraggio all’interno del div "customHeaderMessage" con del testo fittizio:

code language-html
<a href="#">
<span> Dummy text </span>
</a>

Selezionare questo div utilizzando l'azione Insert Element per inserire un'immagine di pari livello di questo div di testo fittizio.

Dopo l'inserimento dell'immagine, verrà visualizzato in questo modo:

code language-html
<a href="#">
<span> Dummy text </span>
<img src=""> This is inserted Image. </img>
</a>

Rimuovi l'intervallo di testo fittizio.

L'azione customCode nel Compositore esperienza visivo non funziona con Internet Explorer 8.

Dettagli
A causa delle limitazioni di Internet Explorer 8 relative alla gestione del contenuto dello script, target.js non supporta questa funzionalità in Internet Explorer 8. Come soluzione alternativa, se la pagina contiene jQuery ed è esposta sull'oggetto finestra a livello globale, target.js può utilizzare l'azione di consegna customCode. Assicurarsi che window.jQuery e window.jQuery.fn.prepend siano definiti.

Il monitoraggio dei clic è supportato solo nella pagina in cui vengono create le esperienze o nella pagina reindirizzata.

Dettagli
Sebbene la modalità Browse sia disponibile per il tracciamento dei clic nel Compositore esperienza visivo, non è possibile utilizzarla per aggiungere il tracciamento dei clic su una pagina.Browse
recommendation-more-help
3d9ad939-5908-4b30-aac1-a4ad253cd654