IF ELSE 条件が、DCE エディターのHTMLコンテンツ内で移動される

Campaign Classicの DCE エディターのHTMLコンテンツに IF ELSE 条件を実装する方法を説明します。

説明 description

環境

  • Adobe Campaign
  • Adobe Campaign Classic
  • Adobe Campaign Classic V7

問題/症状

HTMLコンテンツに IF ELSE の条件を追加して、そのコンテンツを DCE エディターモードに読み込む方法。次に例を示します。

<table>

<% if (recipient.email == 'xxxxx@email.com' ) { %>

<tr>

<td>A</td>

</tr>

<% } else { %>

<tr>

<td>B<td>

</tr>

<% } %>

</table>

条件の目的は、メールアドレスが xxxxx@email.com と等しい場合に、受信者にコンテンツの特定の部分を表示することです。 メッセージを保存すると、IF ELSE の条件がメールコンテンツの先頭に移動することがわかります。

解決策 resolution

この動作は期待されたとおりです。

進化するHTML仕様と最新の仕様に合わせて、[より小さい)(パーセント記号) (<)(%) ][ (パーセント記号) (より大きい) (%)(>)などの非テーブル タグを使用し ] す。   タグ、または img タグや div タグなどの通常のHTMLのタグは、tr タグまたは td タグの間には使用できません。

このようなタグはすべて、ブラウザーによって table タグからプッシュされます。

正しい使用法は次のとおりです。

<% if (recipient.email == 'xxxxx@email.com' ) { %>
<table>
<tr>
<td>A</td>
</tr>
</table>
<% } else { %>
<table>
<tr>
<td>B<td>
</tr>
</table>
<% } %>

この問題は V7 9349 Campaign Classicで発生する可能性がありますが、下位ビルドでは発生しません。

これは、古いビルドでは基になるコントロールが Internet Explorer 7 であり、9349 では IE 11 (またはケースによってはEdge Chromium)であるためです。

これは、新しいブラウザーは古いブラウザーよりもHTMLに準拠しているためです。

HTMLの仕様に従ってコンテンツを作成し、その後、すべての最新のブラウザーを使用する必要があります。コンテンツは、Campaign だけでなく、Campaign 以外の場所でも、ブラウザーやメールクライアント(Outlook など)で表示されるからです。

そうしないと、HTML UI の不一致が発生する可能性があります。

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f