Модуль Sitecore ECM Как управлять локализацией новостной рассылки

Я создаю информационный бюллетень через модуль ECM, который должен быть отправлен на французском или голландском языках.

Я хотел бы понять, как это будет работать для информационного бюллетеня. (Я нашел много информации о веб-сайте CMS, но ничего)

Это мое понимание:

Редактор напишет статью на французском языке. Он создаст новую версию для французского языка. Переводчику придется создать новую версию для голландского языка и перевести текст.

-> У нас есть две версии.

Будут ли какие-либо проблемы во время создания бюллетеня администратором?

И когда мы отправим информационный бюллетень, как это работает?

Является ли язык исходным из свойства (определение пользователя)? Будет ли клиент из Франции получать информационный бюллетень на французском языке, а клиент из Нидерландов — на голландском?

Спасибо,


person fix105    schedule 27.11.2012    source источник
comment
для информационного бюллетеня мне нужно будет создать новый тип обработчика для события name=subscriber:assigned. В исходном коде мне нужно будет определить объект MailMessageItem и назначить этому объекту язык, определенный в свойстве пользователя. Если вам нужна дополнительная информация о локализации информационного бюллетеня, не стесняйтесь обращаться ко мне.   -  person fix105    schedule 29.11.2012


Ответы (1)


Сообщение — это элемент Sitecore (или дерево элементов). Пользователь ECM создаст элемент сообщения в двух версиях (французская и голландская) и заполнит содержимое.

ECM (1.0 - 1.3.3) из коробки может отправить сообщение только на одном языке. Язык для отправки выбирается пользователем ECM при запуске отправки.

В то же время можно настроить ECM для выбора определенного языка сообщений для каждого получателя.

Событие subscriber:assigned — хороший вариант, когда вам нужно изменить содержимое сообщения перед отправкой получателю. Это событие определено в файле Sitecore.EmailCampaign.config.

См. пример кода:

public void OnSubscriberAssigned(object sender, EventArgs args)
{
  MailMessageItem message = Event.ExtractParameter(args, 0) as MailMessageItem;

  // Contact represents a recipient
  Contact recipient = message.PersonalizationContact;

  message.TargetLanguage = GetLanguageYouWantForRecipient(recipient);
}
person Ivan Korshun    schedule 16.01.2013