2014-10-16 7 views
0

정확한 대상을 통해 배포 될 일부 이메일 작업 중입니다. 우리는 AMPScript를 통해 이메일 내에서 무슨 일이 일어나는지 지시합니다. 전자 메일의 콘텐츠 블록은 동적으로 채워지며 필드가 비어있는 경우 해당 테이블 섹션에 대한 호출이 계속 발생하여 전자 메일에 빈 공간이 삽입됩니다. 따라서 디자인을 헛 스윙에서 던지십시오. 제 질문은 사용하지 않을 때 페이지에서 완전히 제거 된 빈 셀을 가질 수 있습니까? 여기 AMPScript : 숨겨진 필드를 삽입하려고 시도했습니다.

Set @SendLog_blockC1 = lookup("RaceDataSendLog","BLK_C1","SubID",@SubLookup,"JobID",@JobLookup,"BatchID",@BatchLookup) 
... 
... 
... 
Set @blockC1 = Concat("My Contents\Newsletter\",@SendLog_blockC1) 
.... 
.... 
.... 
.... 
%%[IF empty(@blockC1) THEN]%% 

%%[ELSE]%% 
<tr> 
<td align="left" valign="top" > 

%%=ContentAreaByName(@blockC1,"",0)=%% 

</td> 
</tr> 
%%[ENDIF]%% 

가 사전에 감사합니다 ... 코드 샘플입니다.

당신이 무엇보다도 그 공간을 참조하고있는 가정에

답변

0

-이 작동합니다 :

<!--%%[ 
IF empty(@blockC1) THEN 
ELSE]%%--> 
<tr> 
<td align="left" valign="top" > 
%%=ContentAreaByName(@blockC1,"",0)=%% 
</td> 
</tr> 
<!--%%[ENDIF]%%--> 

이 이외에, HTML에서 AMPscript을 숨길 것이다 - 당신이 정말로 IF에 필요하지 않습니다 공간을 만들어 내면 바로 그 뒤의 ELSE를 가질 수 있습니다.

+0

AMPScript를 숨기려면 HTML 주석을 사용하지 않는 것이 좋습니다. 그것은 귀하의 이메일의 텍스트 버전을 잭 것입니다. 내 블로그에 대한 대안이 있습니다 : http://sprignaturemoves.com/prettying-up-ampscript-in-emails/ –

+0

empty() 함수 앞에 NOT 연산자를 사용할 수도 있습니다 - 예 : IF NOT (비어 있지 않음) (expression1) 그때. 자세한 내용은 여기를 참조하십시오. http://help.exacttarget.com/en-US/documentation/exacttarget/content/ampscript/ampscript_syntax_guide/ –

0

및 답변 해 주셔서 감사합니다. 마침내 여분의 간격 문제를 해결할 수있었습니다.

내가 수행 한 작업은 if/else 문에서 <tr> and <td> 태그를 제거하는 것이 었습니다. 그런 다음 어떤 블록을 사용할 것인지 결정할 때 PM이 가져온 콘텐츠 블록 주위에 해당 태그 <tr> and <td>을 배치했습니다. 이것은 여분의 간격 문제를 해결했습니다. 클라이언트는 행복하다 !!!

다시 감사합니다 !!!

+0

질문에 답변으로 표시 할 수 있다면 정말 좋을 것입니다. –

관련 문제