[v8에도 적용됩니다.]{class="badge positive" title="Campaign v8에도 적용됩니다."}
전처리 지침 pre-processing-instructions
게재 콘텐츠의 특정 구문을 사용하여 지침을 추가하고 추적된 이메일의 URL을 스크립팅할 수 있습니다. <%@ 지침은 JavaScript이 아닙니다. 이 구문은 Adobe Campaign에만 적용됩니다.
게재 콘텐츠 컨텍스트에서만 적용됩니다. 이메일 URL을 스크립팅하고 계속 추적할 수 있는 유일한 방법입니다(URL 매개 변수 제외). 추적할 링크를 탐지하기 전에 게재 분석 중에 적용된 자동 복사/붙여넣기로 볼 수 있습니다.
지침에는 세 가지 유형이 있습니다.
게재 도우미에서 직접 테스트할 수 있습니다. 이러한 속성은 콘텐츠 미리 보기에서, 그리고 URL 목록을 보기 위해 추적 단추를 클릭할 때 적용됩니다.
include include
다음은 가장 일반적으로 사용되는 예입니다.
-
미러 페이지 링크 포함:
code language-none <%@ include view="MirrorPage" %>
-
미러 페이지 URL:
code language-none View as a <a href="<%@ include view='MirrorPageUrl' %>" _label="Mirror Page" _type="mirrorPage">web page.
-
기본 구독 취소 URL:
code language-none <%@ include option='NmsServer_URL' %>/webApp/unsub?id=<%= escapeUrl(recipient.cryptedId)%>
-
기타 예:
code language-none <%@ include file='http://www.google.com' %> <%@ include file='file:///X:/france/service/test.html' %> <%@ include option='NmsServer_URL' %>
게재 도우미의 개인화 버튼을 사용하여 올바른 구문을 가져옵니다.
value value
이 지침은 모든 수신자에 대해 일정한 게재 매개 변수에 대한 액세스를 제공합니다.
구문:
<%@ value object="myObject" xpath="@myField" index="1" %>
위치:
-
object: 개체 이름(예: 게재, 공급자 등)입니다.
객체는 다음과 같을 수 있습니다.- delivery: 현재 게재용(아래 하위 섹션에서 세부 정보 및 제한 사항 참조).
- provider: 현재 게재 공급자/라우팅(nms:externalAccount)에 사용됩니다.
- 추가 스크립트 개체: 속성 > Personalization > 실행 컨텍스트에 개체 추가 를 통해 컨텍스트에 개체가 로드된 경우.
- foreach 루프 항목: 아래의 Foreach 섹션을 참조하십시오.
-
xpath: 필드의 xpath.
-
index(선택 사항): object 이(가) 배열인 경우(추가 스크립트 개체의 경우) 배열의 항목 인덱스(0에서 시작)입니다.
delivery 개체 delivery-object
이메일 개인화의 경우 게재 오브젝트는 다음 두 가지 방법으로 액세스할 수 있습니다.
-
JavaScript 사용:
code language-none <%= delivery.myField %>`.
JavaScript 개체 게재 사용자 정의 필드는 지원되지 않습니다. MTA는 기본 제공 게재 스키마에만 액세스할 수 있으므로 미리 보기에서는 작동하지만 MTA에서는 작동하지 않습니다.
-
전처리 사용:
code language-none <%@ value object="delivery"
주의
중간 소싱을 통해 전송되는 게재에 대해 다음 지침을 사용하는 경우 마케팅 및 중간 소싱 플랫폼 모두에서 사용자 지정 필드 @myCustomField 을(를) nms:delivery 스키마에 추가해야 합니다.
<%@ value object="delivery" xpath="@myCustomField" %>
게재 매개 변수/변수의 경우 다음 구문(게재 개체 사용)을 사용하십시오.
<%@ value object="delivery" xpath="variables/var[@name='myVar']/@stringValue" %>
Javascript 섹션의 value value-in-javascript
Javascript 섹션에서 <%@ 값 사용을 허용하려면 두 개의 특수 개체가 <% 및 %>(으)로 대체됩니다.
<%@ value object='startScript' %>
<%@ value object='endScript' %>
예제:
<%@ value object='startScript' %> var iMode = <%@ value object="delivery" xpath="@deliveryMode" %> if(iMode == 1) { ... } else { ... }`
`<%@ value object='endScript' %> is expanded in something like <% var iMode = 1 if(iMode == 1) { ... } else { ... } %>.
foreach foreach
이 명령을 사용하면 게재에 로드된 개체 배열에서 반복을 사용하여 개체와 관련된 개별 링크를 추적할 수 있습니다.
구문:
<%@ foreach object="myObject" xpath="myLink" index="3" item="myItem" %> <%@ end %>
위치:
- object: 시작할 개체의 이름(일반적으로 추가 스크립트 개체)이지만 게재가 될 수 있습니다.
- xpath(선택 사항): 반복할 컬렉션의 xpath입니다. 기본값은 "."입니다. 즉, 개체는 반복할 배열입니다.
- index(선택 사항): xpath가 "."가 아닌 경우 그리고 개체는 배열 자체이며, 개체의 항목 인덱스입니다(0에서 시작).
- item(선택 사항): foreach 루프 내의 <%@ 값을 사용하여 액세스할 수 있는 새 개체의 이름입니다. 스키마에 링크 이름이 있는 기본값.
예:
게재 속성/개인화에서 문서 배열 및 수신자와 문서 간의 관계 테이블을 로드합니다.
이러한 문서에 대한 링크를 표시하는 것은 다음과 같이 Javascript를 사용하여 간단히 수행할 수 있습니다.
<%
for(var i=0; i<recipient.rcpArticle.length; i++ )
{
%><a href="http://nl.net?a.jsp?article=<%=recipient.rcpArticle[i].article.@id%>">article</a><%
}
%>
해당 솔루션을 사용하면 모든 문서에 대한 링크를 구분 없이 추적할 수 있습니다. 수신자가 문서 링크를 클릭했음을 알 수 있지만, 어떤 문서에 대해 알 수는 없습니다.
해결 방법은 다음과 같습니다.
-
가능한 모든 아티클을 게재의 추가 스크립트 배열(articleList[])에 미리 로드합니다. 이것은 가능한 아티클이 유한하게 많아야 함을 의미합니다.
-
컨텐츠 시작 부분에 JavaScript 함수를 작성합니다.
code language-none <%@ value object='startScript' %> function displayArticle(articleId) { <%@ foreach object="articleList" item="article" %> if( articleId == <% value object="article" xpath="@id" %> ) { <%@ value object='endScript' %> <a href="http://nl.net?a.jsp?article=<%@ value object="article" xpath="@id" %>">article</a> <%@ value object='startScript' %> } <%@ end @%> } <%@ value object='endScript' %>
-
함수를 호출하여 문서를 표시합니다.
code language-none <% for(var i=0; i<recipient.rcpArticle.length; i++ ) { displayArticle(recipient.rcpArticle[i].article.@id) } %>