1. メッセージの設定

カスタムメッセージタイプクラスの作成

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Email Experience Managerコンポーネントを使用すると、開発者はカスタムタイプのメッセージ項目を作成して使用できます。デフォルトのEXMメッセージタイプは、TypeResolverクラスによってコード内の適切なクラスにマップされます。カスタム・メッセージ・タイプ・クラスを使用するには、カスタム・タイプ・リゾルバーを作成して、メッセージ・タイプを正しくマップする必要もあります。

カスタムメッセージタイプクラスを作成するには:

  1. カスタムメッセージ型クラスをMessageItemクラスまたはその子孫のいずれかから派生させます。

    • TextMailクラス

    • HtmlMailクラス

    • WebPageMailクラス

    • ABTestMessageクラス

  2. 新しいメッセージ・タイプのメッセージ・テンプレートを定義します。

  3. カスタム メッセージ タイプ クラスのClone() メソッドをオーバーライドしないと、ディスパッチ中に失敗します。

  4. Sitecore.Modules.EmailCampaign.Core.TypeResolverクラスからカスタム型リゾルバー クラスを派生させます。

  5. Sitecore.EmailExperience.Core.configファイルで、カスタム タイプ リゾルバーでexm/typeResolver設定にパッチを適用します。

  6. TypeResolverクラスから派生したクラスのGetCorrectMessageObjectメソッドをオーバーライドします。

    例:

    public class NewMail : MessageItem
    {
    public static bool IsCorrectMessageItem(Item item) 
      { 
        return ItemUtilExt.IsTemplateDescendant(item, TemplateIds.NewMessageTemplate); 
      }
    ...
    }
    public class NewTypeResolver : TypeResolver
    {
      public override MessageItem GetCorrectMessageObject(Item item)
      {
        var result = NewMail.FromItem(item);
        return result != null ? result : base.GetCorrectMessageObject(item);
      }
    ...
    }
この記事を改善するための提案がある場合は、 お知らせください!