Dieses Plug-in wird von Adobe Consulting bereitgestellt, damit Sie die Vorteile von Adobe Analytics besser nutzen können. Die Adobe-Kundenunterstützung bietet keine Unterstützung für dieses Plug-in, einschließlich Installation und Fehlerbehebung. Wenn Sie Hilfe bei diesem Plug-in benötigen, wenden Sie sich an das für Ihr Unternehmen zuständige Adobe-Kunden-Team. Sie können ein Treffen mit einer Beraterin oder einem Berater zur Unterstützung arrangieren.
Mit dem rfl
-Plug-in können Sie Werte aus getrennten Zeichenfolgen wie events
, products
, list
und anderen „sicher“ entfernen. Dieses Plug-in ist nützlich, wenn Sie bestimmte Werte aus einer mit Trennzeichen versehenen Zeichenfolge entfernen möchten, ohne sich Gedanken über Trennzeichen machen zu müssen. Mehrere andere Plug-ins sind auf diesen Code angewiesen, um korrekt zu funktionieren. Dieses Plug-in ist nicht erforderlich, wenn Sie nicht gleichzeitig eine bestimmte Funktion für mehrere Analytics-Variablen ausführen müssen oder wenn Sie keine abhängigen Plug-ins verwenden.
Das Plug-in verwendet folgende Logik:
Dieses Plug-in wird noch nicht für die Verwendung im Web SDK unterstützt.
Adobe bietet eine Erweiterung, mit der Sie die am häufigsten verwendeten Plug-ins mit Adobe Analytics verwenden können.
Wenn Sie die Plug-in-Erweiterung "Common Analytics Plugins"nicht verwenden möchten, können Sie den Editor für benutzerdefinierten Code verwenden.
Kopieren Sie den folgenden Code und fügen Sie ihn an beliebiger Stelle in der AppMeasurement Datei ein, nachdem das Analytics-Tracking-Objekt instanziiert wurde (unter Verwendung von s_gi
). Die Beibehaltung von Kommentaren und Versionsnummern des Codes in Ihrer Implementierung hilft Adobe bei der Fehlerbehebung potenzieller Probleme.
/******************************************* BEGIN CODE TO DEPLOY *******************************************/
/* Adobe Consulting Plugin: rfl (removeFromList) v2.1 */
function rfl(lv,vr,d1,d2,df){var b=lv,f=vr,e=d1,h=d2,g=df;if("-v"===b)return{plugin:"rfl",version:"2.1"};a:{if("undefined"!==typeof window.s_c_il){var c=0;for(var a;c<window.s_c_il.length;c++)if(a=window.s_c_il[c],a._c&&"s_c"===a._c){c=a;break a}}c=void 0}"undefined"!==typeof c&&(c.contextData.rfl="2.1");if(!b||!f)return"";c=[];a="";e=e||",";h=h||e;g=g||!1;b=b.split(e);e=b.length;for(var d=0;d<e;d++)-1<b[d].indexOf(":")&&(a=b[d].split(":"),a[1]=a[0]+":"+a[1],b[d]=a[0]),-1<b[d].indexOf("=")&&(a=b[d].split("="),a[1]=a[0]+"="+a[1],b[d]=a[0]),b[d]!==f&&a?c.push(a[1]):b[d]!==f?c.push(b[d]):b[d]===f&&g&&(a?c.push(a[1]):c.push(b[d]),g=!1),a="";return c.join(h)};
/******************************************** END CODE TO DEPLOY ********************************************/
Die rfl
-Funktion verwendet die folgenden Argumente:
lv
(erforderlich, Zeichenfolge): Eine Variable (oder Zeichenfolge), die eine Liste mit getrennten Werten enthält.vr
(erforderlich, Zeichenfolge): Der Wert, der aus dem lv
-Argument entfernt werden soll. Adobe empfiehlt, während eines einzelnen rfl
-Aufrufs nicht mehrere Werte zu entfernen.d1
(optional, Zeichenfolge): Das Trennzeichen, das vom lv
-Argument verwendet wird. Der Standardwert ist ein Komma (,
).d2
(optional, Zeichenfolge): Das Trennzeichen, das die Rückgabezeichenfolge verwenden soll. Die Standardeinstellung ist derselbe Wert wie das d1
-Argument.df
(optional, boolesch): Wenn auf true
gesetzt, werden anstelle aller Instanzen nur doppelte Instanzen des vr
-Arguments vom lv
-Argument entfernt. Die Standardeinstellung ist false
, wenn nicht festgelegt.Der Aufruf dieser Methode gibt eine geänderte Zeichenfolge zurück, die das lv
-Argument enthält, jedoch keine Instanzen (oder doppelten Instanzen) des im vr
-Argument angegebenen Werts.
Wenn …
s.events = "event22,event24,event25";
… und der folgende Code ausgeführt wird …
s.events = rfl(s.events,"event24");
… lautet der Endwert von s.events:
s.events = "event22,event25";
Wenn …
s.events = "event22,event24,event25";
… und der folgende Code ausgeführt wird …
s.events = rfl(s.events,"event26");
… lautet der Endwert von s.events:
s.events = "event22,event24,event25";
In diesem Beispiel hat der rfl-Aufruf keine Änderungen an s.events vorgenommen, da s.events „event26“ nicht enthielt.
Wenn …
s.events = "event22,event24,event25";
… und der folgende Code ausgeführt wird …
s.events = rfl(s.events);
… lautet der Endwert von s.events:
s.events = "";
Wenn entweder das lv
-Argument oder das vr
-Argument leer ist (bei einem rfl
Aufruf), dann liefert das Plug-in nichts zurück.
Wenn …
s.prop4 = "hello|people|today";
… und der folgende Code ausgeführt wird …
s.eVar5 = rfl(s.prop4,"people","|");
… lautet der Endwert von s.prop4 weiterhin …
s.prop4 = "hello|people|today";
… aber der Endwert von s.eVar5 lautet:
s.eVar5 = "hello|today";
Beachten Sie, dass das Plug-in nur einen Wert zurückgibt; es setzt die durch das lv
-Argument übergebene Variable nicht wirklich zurück.
Wenn …
s.prop4 = "hello|people|today";
… und der folgende Code ausgeführt wird …
s.prop4 = rfl(s.prop4,"people");
… lautet der Endwert von s.prop4 weiterhin …
s.prop4 = "hello|people|today";
Setzen Sie immer dann, wenn der lv
-Argumentwert ein anderes Trennzeichen als den Standardwert (z. B. ein Komma) enthält, das d1
-Argument.
Wenn …
s.events = "event22,event23,event25";
… und der folgende Code ausgeführt wird …
s.events = rfl(s.events,"EVenT23");
… lautet der Endwert von s.events:
s.events = "event22,event23,event25";
Obwohl dieses Beispiel nicht praktikabel ist, zeigt es die Notwendigkeit, die Groß- und Kleinschreibung zu berücksichtigen.
Wenn …
s.events = "event22,event23:12345,event25";
… und der folgende Code ausgeführt wird …
s.events = rfl(s.events,"event23");
… lautet der Endwert von s.events:
s.events = "event22,event25";
Wenn …
s.events = "event22,event23:12345,event25";
… und der folgende Code ausgeführt wird …
s.events = rfl(s.events,"event23:12345");
… lautet der Endwert von s.events:
s.events = "event22,event23:12345,event25";
Wenn Sie ein Ereignis entfernen müssen, das eine Serialisierung und/oder numerische oder Währungs-Syntax verwendet, sollten Sie im rfl
-Aufruf nur das Ereignis selbst angeben (d. h. ohne die nummerischen oder Währungswerte bzw. Serialisierung).
Wenn …
s.events = "event22,event23,event23,event23,event24,event25";
… und der folgende Code ausgeführt wird …
s.events = rfl(s.events,"event23");
… lautet der Endwert von s.events:
s.events = "event22,event24,event25");
Wenn …
s.events = "event22,event23,event23,event23,event24,event25";
… und der folgende Code ausgeführt wird …
s.events = rfl(s.events,"event23", "", "",true);
… lautet der Endwert von s.events:
s.events = "event22,event23,event24,event25");
Wenn …
s.events = "event22,event23,event23,event23,event24,event25";
… und der folgende Code ausgeführt wird …
s.events = rfl(s.events,"event23", "", "|",true);
… lautet der Endwert von s.events:
s.events = "event22|event23|event24|event25");
Wenn …
s.events = "event22,event23,event24,event25";
… und der folgende Code ausgeführt wird …
s.events = rfl(s.events,"event23,event24");
… lautet der Endwert von s.events:
s.events = "event22,event23,event24,event25";
Das Festlegen mehrerer Werte im vr
-Argument wird nicht unterstützt. Die rfl
-Logik im obigen Beispiel würde zunächst die Werte im lv
-Argument (d. h. s.events) aufspalten und dann versuchen, jeden abgegrenzten Wert mit dem vollständigen vr
-Argumentwert (d. h. "event23,event24"
) abzugleichen.
Wenn …
s.events = "event22,event23,event24,event25";
… und der folgende Code ausgeführt wird …
s.events = rfl(s.events,"event23");
s.events = rfl(s.events,"event24");
… lautet der Endwert von s.events:
s.events = "event22,event25");
Jeder aus der Liste zu entfernende Wert sollte in seinem eigenen rfl
-Aufruf enthalten sein.
Wenn …
s.linkTrackVars = "events,eVar1,eVar2,eVar3";
… und der folgende Code ausgeführt wird …
s.linkTrackVars = rfl(s.linkTrackVars,"eVar2", ",", ",", false);
…lautet der Endwert von s.linkTrackVars:
s.linkTrackVars = "events,eVar1,eVar3";
Die letzten drei Argumente (d. h. ",",",",false) am Ende dieses rfl
-Aufrufs sind nicht erforderlich, sind aber auch nicht hinderlich, da sie mit den Standardeinstellungen übereinstimmen.
Wenn …
s.events = "event22,event23,event24";
… und der folgende Code ausgeführt wird …
rfl(s.events,"event23");
…lautet der Endwert von s.events weiterhin:
s.events = "event22,event23,event24";
Beachten Sie auch hier, dass das Plug-in nur einen Wert zurückgibt; es setzt die durch das lv
-Argument übergebene Variable nicht wirklich zurück.
join
-Plug-in wurde entfernt.