【问题标题】:Sitecore ECM - Change order of Email SendoutsSitecore ECM - 更改电子邮件发送的顺序
【发布时间】:2013-01-15 17:25:11
【问题描述】:

我正在尝试对 Sitecore ECM 发送电子邮件的顺序进行排序 - 我在 DispatchNewsletters 管道中添加了一个自定义处理器,就在 sendEmails 处理器之前。但我似乎无法更改发送电子邮件的顺序。我正在尝试做的一个基本示例:

 public void Process(DispatchNewsletterArgs args)
    {
        IOrderedEnumerable<Contact> orderedSubscribers = args.Message.Subscribers.OrderBy(x => x.Profile.UserName.Split('_')[1]);
        List<Contact> orderedList = orderedSubscribers.ToList();
        args.Message.Subscribers.Clear();

        //Add the sorted subscriber list. 
        args.Message.Subscribers.AddRange(orderedList);
    }
}

似乎是从联系人或成员列表而不是订阅者列表设置发送。但我无法改变那里的顺序。任何人都可以对此有所了解吗?

【问题讨论】:

    标签: sitecore sitecore6 sitecore-ecm


    【解决方案1】:

    排队电子邮件的顺序基于 args.Message.SubscribersNames 属性(不是基于 args.Message.Subscribers)。

    您仍然需要记住,电子邮件被安排为异步任务,因此您无法真正判断它们是否会按照排队的顺序进行处理。

    您可以查看 Sitecore.Modules.EmailCampaign.Core.Pipelines.DispatchNewsletter.SendMessage 类的代码,了解有关如何处理电子邮件的更多详细信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-04
      • 1970-01-01
      • 2014-03-18
      相关资源
      最近更新 更多