Добавяне на динамично съдържание към имейл съобщения
Важно
Тази статия се отнася само за изходящ маркетинг, който ще бъде премахнат от продукта на 30 юни 2025 г. За да избегнете прекъсвания, преминете към пътувания в реално време преди тази дата. Повече информация: Преглед на прехода
Предупреждение
Ако използвате защита на ниво поле за някои от вашите имейл полета, трябва да добавите правилните разрешения или Customer Insights - Journeys не можете да обработите имейла си.
За да настроите защита на ниво поле:
- Горе вдясно изберете иконата Настройки , след което изберете Разширени настройки.
- В секцията Система изберете Сигурност.
- Изберете Профили за защита на колони.
- За да създадете нов профил за защита на полето, изберете Нов профил и въведете име в секцията Общи.
- В секцията Потребители добавете системния потребител: "# D365 Marketing Core Sending".
- В секцията Разрешения за полета добавете разрешение за четене към всички задължителни полета.
Динамичното съдържание се разрешава точно преди дадено съобщение да бъде изпратено на конкретно лице. Обикновено динамичното съдържание се използва за сливане на информация от записа на контакт на получател (като например собствено и фамилно име), за поставяне на специални връзки и за поставяне на информация и връзки от настройките на съдържанието. Ако умеете да работите в код, можете също да създадете персонализирана логика, която включва условни преходи, цикли for-each и др. Можете да използвате динамично съдържание където и да е в основния текст на съобщението, както и да използвате няколко типа динамични стойности в полетата на заглавката (тема, адрес на подател и име на подател) на съобщението.
Използване на настройките на съдържанието за настройване на хранилища със стандартни и задължителни стойности за имейл съобщения
Настройките на съдържание са стандартни набори и изискват стойности, които са налични за използване в маркетинговите имейл съобщения. Всеки от тях включва връзка към абонаментен център, връзка за препращане на приятел, връзки към социални медии, вашия пощенски адрес и друга информация, която може да бъде поставена в съобщението като динамични стойности с помощта на функцията за персонализиране .
Dynamics 365 Customer Insights - Journeys се доставя с един запис за настройки на съдържанието по подразбиране, който е предварително конфигуриран да използва център за абонаменти по подразбиране (също включен от кутията). Можете да персонализирате този запис според нуждите и освен това можете да създавате допълнителни записи. Всяко пътешествие на клиента се настройва да използва конкретен запис на настройки на съдържанието, което означава, че всички съобщения, изпращани от това пътешествие, ще използват един и същи запис. Всяко пътешествие обаче може да използва различен запис, което означава, че можете да използвате идентичен проект на маркетингов имейл в две или повече пътешествия на клиента, всеки от които указва различен запис с настройки на съдържанието. Ако имате повече от един записи с настройки на съдържание, точно един от тях ще бъде по подразбиране и ще се прилага автоматично за всяко пътешествие на клиента, създадено от вас.
Стойностите на настройките на съдържание най-напред се оценяват към момента на изпращане, което означава, че можете да редактирате запис с настройки на съдържание по всяко време и всички чакащи и бъдещи имейл съобщения автоматично ще използват последните стойности.
Всеки запис на настройки на съдържание, който използвате, трябва да е достъпен за външните маркетингови услуги, които управляват асемблирането и доставката на имейлите. Следователно трябва да публикувате записите си за настройки на съдържанието, като изберете Стартиране всеки път, когато създавате нов.
Бележка
Ако имате други видове стойности, които често използвате в имейл съобщения и/или искате да управлявате на ниво пътешествие на клиента, можете да ги добавите като потребителски полета към обекта с настройки на съдържанието, точно както можете за други типове обекти в Dynamics 365. В текущото издание обаче всички потребителски полета за обекта на настройките на съдържанието трябва да бъдат от типа текст (низ). Повече информация: Персонализиране Customer Insights - Journeys
За преглед, редактиране или създаване на запис с настройки на съдържание:
Отидете наизходящ маркетингМаркетингови> шаблони>Настройки на съдържанието.
Отваря се стандартна страница със списък, където можете да преглеждате, сортирате, търсите и филтрирате списъка, за да намерите конкретен запис, и да използвате бутоните в лентата с команди, за да добавяте или премахвате запис. Изберете запис, за да го отворите за редактиране, или изберете Създай в командната лента, за да създадете нов.
Отваря се формулярът Настройки на съдържанието. Ако редактирате запис, който вече е активен, трябва да изберете Редактиране в командната лента, преди да можете да го редактирате. Ако създавате нов, можете просто да започнете да попълвате полетата.
Извършете следните настройки според нуждите:
- Име: Въведете име за записа за настройките на клиента. Това е името, което се показва, когато присвоявате настройките на съдържание на пътешествие на клиента или визуализация на имейл съобщение.
- Собственик: Показва потребителя, Dynamics 365 Customer Insights - Journeys който е създал записа.
- Основен адрес: Въведете основната част от пощенския адрес на вашата организация. Всички маркетингови имейл съобщения трябва да включват валиден основен адрес, взет от запис с настройки на съдържание. Изберете бутона , за да използвате персонализиране , за да въведете израз, който препраща към поле от съществуващ запис (като например адресно поле от конкретен запис на акаунт).
- Адресен ред 2: Въведете допълнителна информация за пощенския адрес (ако е необходимо). Изберете бутона , за да използвате персонализиране , за да въведете израз, който препраща към поле от съществуващ запис (като например адресно поле от конкретен запис на акаунт).
- По подразбиране: Задайте на Да , за да запишете текущите настройки на съдържанието по подразбиране за всички нови пътешествия на клиента. Винаги трябва да има точно едно по подразбиране; ако промените настройката по подразбиране, съществуващата настройка по подразбиране автоматично ще бъде променена на Не.
- По подразбиране за притежаване на бизнес единица: Тази настройка е налице само когато обхватът на бизнес единицата е активиран. Задайте това на Да , за да запишете текущите настройки на съдържанието по подразбиране за всички нови пътешествия на клиенти в рамките на бизнес единицата. Винаги трябва да има точно една настройка на съдържанието по подразбиране за обхвата на бизнес единицата; ако промените настройката по подразбиране, съществуващата настройка по подразбиране автоматично ще бъде променена на Не.
- URL адрес на LinkedIn, URL адрес на Twitter, Facebook URL адрес, YouTube URL адрес на Instagram и URL адрес на Google Plus: За всяка от тези услуги за социални медии въведете URL адреса на целевата страница за вашата организация.
-
център за абонаменти: Посочете съществуваща маркетингова страница, която е настроена като център за абонаменти. Всички маркетингови имейл съобщения трябва да включват валидна връзка към абонаментен център, взета от запис с настройки на съдържание. Изберете бутона , за да използвате персонализиране , за да въведете израз, който препраща към полето URL адрес на цялата страница за конкретната страница, която искате да използвате. Полученият израз изглежда по следния начин (където GUID варира в зависимост от записа, който сте избрали с помощта на персонализиране):
{{msdyncrm_marketingpage(3343053c-8daf-e911-a85e-000d3a3155d5).msdyncrm_full_page_url}}
-
Препращане на приятел: Посочете съществуваща маркетингова страница, която се записва като страница за препращане на приятел. Изберете бутона, за да изберете от списък с налични страници. Изберете бутона , за да използвате персонализиране , за да въведете израз, който препраща към полето URL адрес на цялата страница за конкретната страница, която искате да използвате. Полученият израз изглежда по следния начин (където GUID варира в зависимост от записа, който сте избрали с помощта на персонализиране):
{{msdyncrm_marketingpage(36458a9e-72af-e911-a859-000d3a3159df).msdyncrm_full_page_url}}
Изберете Запиши в долния десен ъгъл на прозореца, за да запазите настройките си.
Ако редактирате запис с настройки на съдържанието, който вече е бил активен, записът се публикува автоматично, когато го запишете. Ако създавате нов запис, изберете Стартиране на живо в командната лента, за да го публикувате в маркетинговите услуги, за да можете да започнете да го използвате.
Използване на персонализиране за поставяне на динамични стойности на полета
Персонализирането ви помага да конструирате валидни динамични изрази, за да позиционирате стойностите на полетата от записите на контактите на получателя, настройките за съдържанието на съобщението и други стойности на базата данни. Този бутон се показва в лентата с инструменти за форматиране на текст, когато изберете елемент тип текст в графичния дизайнер. Бутонът се показва също за някои полета за настройки, като например тема, адрес на подател и име на подател.
Бележка
Диалоговият прозорец за персонализиране показва само обекти и релации, които са синхронизирани с услугата за маркетингови прозрения. Ако трябва да покажете информация или да използвате релации за един или повече обекти, които не са изброени, тогава помолете администратора си да добави съответните обекти към услугата Marketing Insights. Ако сте администратор, вижте Избор на обекти за синхронизиране с услугата за маркетингови прозрения за инструкции. Обектът собственик вече не се поддържа за персонализиране на имейли. Заменете го със системния потребител или екипния обект, в зависимост от това кой обект представлява собственика на записа.
Използване на персонализиране за поставяне на динамичен израз
За да използвате персонализиране:
Позиционирайте курсора в полето или текстовия елемент, където искате да вмъкнете динамичния текст, след което изберете бутона Персонализиране . Отваря се диалоговият прозорец за персонализиране.
Изпълнете едно от следните действия:
- Изберете Динамично съдържание , за да поставите стойност, която може да се промени въз основа на контекста, в който използвате съобщението, и след това изберете едно от следните от падащия списък тук:
- Контакт: Поставя стойност на поле, като например собствено име, от записа на контакт на получателя. Тези стойности варират по получател.
- ContentSettings: Поставя стойност на поле от настройките на съдържанието. Стойности, като например URL адрес на абонамент център, URL адрес за препращане и пощенски адрес на подателя, са достъпни тук. Тези стойности могат да варират според пътешествието на клиента, когато се използва съобщението.
- FormDoiSubmission: Поставя динамично поле за двойно включване на формуляр. Това поле не изисква стойност на релацията, както е обсъдено по-долу.
- Съобщение: Поставя стойности, които са свързани със самото съобщение; понастоящем това включва URL адреса на отворената като уеб страница и различните динамични стойности, използвани в имейлите с двойно включване.
- Изберете Статично съдържание , за да поставите фиксирана стойност от конкретен запис (като например името на предстоящо събитие). Тази стойност е същата, независимо от мястото, където можете да използвате съобщението или кой го получава. След това направете следните настройки, за да идентифицирате обекта и записа, който съдържа стойността, от която се нуждаете:
- Изберете опция (горен разгъващ се списък): Изберете обекта (като събитие или акаунт). За да търсите даден обект, поставете курсора в това поле и започнете да въвеждате името му, докато желаният обект се покаже.
- Избор на запис (долен падащ списък): Изберете конкретния запис по име. Този списък показва всички записи от избрания обект. Както при обекта можете също да търсите тук.
- Изберете Динамично съдържание , за да поставите стойност, която може да се промени въз основа на контекста, в който използвате съобщението, и след това изберете едно от следните от падащия списък тук:
Сега трябва да идентифицирате конкретното поле, което искате да поставите. Изпълнете едно от следните действия:
- Изберете Свързан обект , за да намерите поле от обект, който е свързан с този, който сте избрали на предишната страница. След това направете следните настройки, за да идентифицирате релацията и полето, което искате да покажете:
- Релация за избор: Релацията определя към кой втори обект искате да преминете и пътя, по който ще поемете, за да стигнете до там. За да търсите релация, поставете курсора в това поле и започнете да въвеждате името й, докато желаната релация се покаже, след което я изберете. За повече информация как да разберете начина, по който се представят релациите тук, вижте следващия раздел.
- Избор на поле: Изберете името на полето, което искате да покажете. Както при релацията можете също да търсите тук. Този падащ списък е наличен само ако сте избрали релация N:1.
- Изберете Свързан обект , за да намерите поле от обект, който е свързан с този, който сте избрали на предишната страница. След това направете следните настройки, за да идентифицирате релацията и полето, което искате да покажете:
В долната част на диалоговия прозорец сега виждате окончателния израз. Изберете Вмъкване , за да поставите този израз.
Важно
Списъците, създадени с помощта на цикли за всеки ред, не се изобразяват в определен ред и не могат да се сортират по никое поле.
Как персонализирането представя релации към база данни
Когато избирате релация в персонализиране, опциите се показват с помощта на една от следните конвенции за именуване:
-
FieldName (PrimaryEntity) -> SecondaryEntity
Когато основният обект е в скоби и показва име на поле, това е релация "много към едно " (N:1), която води до един запис от вторичния обект. Затова обикновено трябва да използвате втория падащ списък, за да изберете поле от вторичния обект, което да се показва с вашия израз. -
PrimaryEntity -> FieldName (вторичен обект)
Когато вторичният обект е в скоби и показва име на поле, това е релация "един към много" (1:N), която може да доведе до множество записи от вторичния обект. Следователно не можете да изберете поле (вторият падащ списък е забранен) и вместо това трябва да използвате тази релация като част от цикъл for/each, за да покажете стойности от всеки наличен свързан запис. -
Първичен обект -> вторичен обект
Когато нито един обект не е в скоби, това е релация много към много (N:N), която може да свърже множество записи в двете посоки. Следователно не можете да изберете поле (вторият падащ списък е забранен) и не можете да използвате тази релация за персонализиране. Това е така, защото релацията се поддържа от междинен обект и можете да преминавате само към междинната единица от главния обект.
Където:
- PrimaryEntity е обект в началната страна на релацията. Винаги се показва от лявата страна на стрелката. Това е обектът, който сте избрали на предишната страница на диалоговия прозорец за персонализиране. Например контакт (основен обект) може да бъде свързан с акаунт (вторичен обект) чрез полето Име на фирма на контакта (име на поле); това ще бъде показано като: Име на фирма (контакт) -> Акаунт.
- FieldName винаги се показва до име на обект (което е в скоби). Това е името на полето, чрез което се установява релацията. Наименуваното поле принадлежи на обекта в скоби и показва стойност от обекта от другата страна на стрелката (но всъщност съдържа ИД на съответния запис, от който се извлича стойността). В някои случаи, ще забележите връзка между същите два обекта, всеки от които преминава през различно поле.
- SecondaryEntity е местоназначението на релацията. Винаги се показва от дясната страна на стрелката. Стойностите, които показвате с крайния израз, ще идват от поле, принадлежащо на вторичния обект.
Бележка
За релации N:N не се показва стойност на полето. Това означава, че ако имате повече от една релации N:N между едни и същи обекти, ще видите множество идентично изглеждащи релации в падащия списък. Тази ситуация е много рядка, но ако я видите, ще трябва да използвате проба-грешка, за да идентифицирате правилната релация за използване. За да потвърдите, можете да проверите получения израз , за да видите дали изглежда, че сте избрали правилната релация (релациите са показани по различен начин тук и могат да дадат следа), или да настроите тестово съобщение, което включва и двете версии на релацията N:N, и да използвате тестово пътешествие на клиента, за да го доставите на себе си.
Ето някои примери:
- Име на фирма (контакт) -> Акаунт: Тази релация се използва от обекта Контакт за показване на информация от обекта Акаунт в полето Име на фирма на запис на контакт. С други думи тя свързва фирмата (клиент), за която работи контактът.
- Управляващ партньор (контакт) -> Акаунт: Тази релация се използва от обекта Контакт за показване на информация от обекта Акаунт в полето Управляващ партньор на запис на контакт. С други думи тя свързва фирмата (клиент), която управлява партньора за контакт.
- Контакт -> Основен контакт (Клиент): Тази релация се използва от обекта Акаунт за показване на информация от обекта Контакт в полето Основен контакт на запис на акаунт. С други думи, той намира всички клиенти, в които текущият контакт е определен като основен контакт.
- Contact -> Contact (Регистрация на събитие): Тази релация се използва от обекта Регистрация на събитие за показване на информация от обекта Contact в полето Контакт на запис за регистрация на събитие. С други думи, той намира всички регистрации на събития, направени от (или за) текущия контакт.
Изрази, създадени чрез персонализиране
Персонализирането създава израз, който използва формат като следния:
{{EntityName.FieldName}}
{{EntityName(RecordID).FieldName}}
{{EntityName.RelationshipName.FieldName}}
{{EntityName(RecordID).RelationshipName.FieldName}}
Обърнете внимание, че нотацията, използвана за имена на релации в получените изрази, не съвпада с начина, по който са представени в диалоговия прозорец за персонализиране. Ето някои примери за получени изрази:
{{contact.firstname}}
Поставя собственото име на получателя.{{msdyncrm_marketingpage(3343053c-8daf-e911-a85e-000d3a3155d5).msdyncrm_full_page_url}}
Поставя стойността на полетоmsdyncrm_full_page_url
от записа на маркетингова страница, зададен от GUID, в скоби. Обикновено можете да използвате израз на този формуляр в запис на настройки на съдържанието, за да зададете център за абонаменти или страница за препращане на приятел.{{msdyncrm_contentsettings.msdyncrm_subscriptioncenter}}
Поставя URL адреса за страницата на центъра за абонаменти, идентифицирана в настройките на съдържанието, конфигурирани за пътешествието на клиента, което изпраща съобщението.{{msdyncrm_contentsettings.msdyncrm_forwardtoafriend}}
Поставя URL адреса към страницата за препращане, идентифицирана в настройките за съдържанието, конфигурирани за пътешествие на клиента, което изпраща съобщението.{{Message.ViewAsWebpageURL}}
Поставя URL адреса за отваряне на текущото съобщение в уеб браузър.{{msevtmgt_event(8a519395-856c-4e22-b560-650ce6d6a79d).msevtmgt_webinarurl}}
Поставя URL адреса на уебинар за събитието, идентифицирано от указания идентификатор на събитието (в скоби).{{msdyn_survey(39128da2-c968-4627-9595-f030b6571be4).msdyn_name}}
Поставя името на проучването, идентифицирано от указания идентификатор на проучването (в скоби).{{contact.contact_account_parentcustomerid.name}}
Този израз намира името на акаунта за компанията, в която работи даден контакт.{{contact.contact_account_msa_managingpartnerid.name}}
Този израз намира името на управляващия партньор за акаунта за компанията, в която работи даден контакт.
След като имате израз, който работи, можете да го копирате и поставите навсякъде. Не е нужно да използвате персонализация всеки път.
Важно
Можете да имате най-много два прехода (точки) в изразите за полета. Не се опитвайте да създавате по-сложни изрази, като добавяте повече скокове към изразите, създадени с персонализиране.
Съвет
Ако се нуждаете от типовете данни, които се поддържат от персонализирането, обикновено е най-добре да използвате функцията за персонализиране , за да поставите кода, вместо да се опитвате да го въведете от нулата. Това ще гарантира, че имената на обектите, релациите и полетата съвпадат с онези, използвани в базата данни, и ще ви помогне да избегнете неправилно изписани думи.
Бележка
Dynamics 365 Customer Insights - Journeys Функцията за изпращане на имейли не поддържа изчисляеми полета.
Динамични стойности в полетата „До“, „От име“, „От адрес“ и „Отговор до“
В раздела Резюме на формуляра за маркетингов имейл можете да направите различни настройки, които не са свързани със съдържанието, за вашето съобщение в секцията Подател и получател . Това включва стойности и изрази за определяне на стойностите на полетата „до“, „от име“, „от адрес“ и „отговор до“, които съобщението ще използва.
Един типичен начин да се възползвате от тази функция е да зададете името От и адреса От на собственика на записа на контакта. След това чрез присвояване на собственика на всеки запис към специалист по продажбите, управляващ този контакт, получателите ще получат маркетингови имейли, които показват адрес от някой, когото може да познават, което може значително да увеличи честотата на отваряне. Ето как:
- Ако вашият Customer Insights - Journeys екземпляр все още не е настроен да синхронизира обекта User (systemuser) с услугата marketing-insights, говорете с вашия администратор за настройката му. Ако сте администратор, вижте Избор на обекти за синхронизиране с услугата за маркетингови прозрения за инструкции.
- Отворете имейл съобщението си и отидете в раздела Резюме .
- Изтрийте съдържанието на полето От име и след това изберете бутона Персонализиране до това поле.
- На първата страница на диалоговия прозорец за персонализиране изберете Контекстно и го задайте на Контакт. След това изберете Напред.
- На втората страница на диалоговия прозорец за персонализиране изберете Свързан обект и след това:
- Задайте горния падащ списък (релация) на Притежаващ потребител (Контакт) -> Потребител.
- Задайте долния падащ списък (поле) на Пълно име.
- Изберете OK , за да поставите израза, който трябва да бъде:
{{contact.contact_systemuser_owninguser.fullname}}
. - Изтрийте съдържанието на полето От адрес и след това изберете бутона Персонализиране до това поле.
- На първата страница на диалоговия прозорец за персонализиране изберете Контекстно и го задайте на Контакт. След това изберете Напред.
- На втората страница на диалоговия прозорец за персонализиране изберете Свързан обект и след това:
- Задайте горния падащ списък (релация) на Притежаващ потребител (Контакт) -> Потребител.
- Задайте долния падащ списък (поле) на Основен имейл.
- Изберете OK , за да поставите израза, който трябва да бъде:
{{contact.contact_systemuser_owninguser.internalemailaddress}}
.
Можете да използвате подобни техники, за да поставите името на потребител или имейл адреса на собственика навсякъде в съдържанието на съобщението. Можете да направите това с помощта на персонализиране или да копирате/поставите изразите на кормилото, или дори да въведете изразите на кормила ръчно.
Използвайте динамични стойности, за да изберете източник на изображение или връзка
Можете да използвате динамичен израз, за да определите изходния URL адрес за елементите на изображението. За да направите това, изберете елемента на изображението, отидете в неговия панел Свойства и след това изберете бутона Персонализиране до полето Източник , за да поставите динамичен текст като част от URL адреса. Обикновено това се смесва със статичния текст, за да се събере пълен URL адрес. Можете например да включите ИД на контакт на получателя или името на фирмата, за да изберете изображение, което е подходящо за всеки индивидуален получател.
Можете също така да използвате персонализиране, за да помогнете за изграждането на динамичен израз за задаване на дестинация на връзката за изображението.
Бележка
Библиотеката Dynamics 365 Customer Insights - Journeys с файлове генерира уникален базиран на GUID файлов път за всяко изображение, което качвате, което означава, че изображенията в библиотеката с файлове имат непредсказуеми URL адреси, които не включват първоначалното име на файла. Следователно, за да използвате техниките, описани тук, трябва да хоствате изображенията на собствен уеб сайт или услуга за хостване на трета страна, където URL адресите са предвидими и може да включват стойност, която лесно да се извлича от поле на Dynamics 365.
Намиране на идентификатори на записи
Неконтекстуалните изрази на полета (които използват формуляра {{EntityName(RecordID).FieldName}}
) изискват ИД на запис, за да идентифицират конкретния запис, от който трябва да идва стойността. Обикновено персонализирането ви помага да намерите тези ИД, но понякога може да се наложи да намерите ИД ръчно, докато проектирате динамични функции за съобщение. За да намерите идентификатора на запис:
- Отворете записа, към който искате да направите препратка.
- Вижте URL адреса в адресната лента на браузъра, който трябва да е подобен на този в следния пример:
https://<MyOrg>.crm.dynamics.com/main.aspx?appid=00001111-aaaa-2222-bbbb-3333cccc4444&pagetype=entityrecord&etn=msevtmgt_event&id=11112222-bbbb-3333-cccc-4444dddd5555
- Намерете частта от URL адреса, която започва с,
&id=
която е последвана от идентификационния номер на текущия ви запис. Копирайте този номер (само стойността) и го използвайте в израза си.
Разширено динамично съдържание
Можете да добавите разширено логично обработване към проектите на имейли, което може да направи съдържанието по-адаптивно към получателите, демографията и контекста. Този тип персонализиране изисква да имате базови познания по скриптиране и програмиране.
Както видяхте в предишни примери, динамичното съдържание е заобиколено от двойни скоби ( {{
и }}
). Това включва както стандартните стойности на полетата, които добавяте с помощта на функцията за персонализиране , така и по-разширените конструкции за програмиране, описани в този раздел.
Съвет
Ако искате двойните скоби да се показват в съобщение, вместо да служат за обозначаване на началото или края на блок с код, поставете пред първата скоба обратно наклонена черта, например \{{
или \}}
. Наклонените черти няма да се показват в окончателното рендирано съобщение, но двойните скоби ще се показват.
Условни декларации и сравнения
Условните (if-then-else) декларации показват съдържанието в зависимост от това дали един или повече условни израза се разрешават до „true“ или „false“. Можете да добавите кода, който се изисква, за да създадете тези твърдения, като го поставите в елемент за текст или чрез поставяне на елемент на потребителски код между останалите елементи на дизайна. Повече информация: Как да въведете разширено динамично съдържание в дизайнера
Условните декларации приемат следната форма:
{{#if (<operator> <value1> <value2>)}}
Content displayed when the expression is true
{{else if (<operator> <value1> <value2>)}}
Content displayed when the first expression is false and the second one is true
.
.
.
{{else}}
Content displayed when all expressions are false
{{/if}}
Където:
- Условният блок винаги трябва да се отваря с
{{#if … }}
. - Условните изрази трябва да са оградени в скоби.
- Условните изрази започват с оператор <,>който трябва да е една от стойностите, изброени в таблицата по-долу. Той определя как трябва да се съпостави първата стойност с втората.
- <VALUE1> и <VALUE2> са стойности, които трябва да бъдат сравнени от условния израз и всяка може да бъде динамична или постоянна стойност. Ако <value1> или <value2> е постоянна низова стойност (а не число или израз), тогава тя трябва да бъде оградена с единични кавички ('); за реални числа използвайте точка (.) като десетичен разграничител.
- Ако <value1> е булево поле (известно също като поле с две опции в Dynamics 365), тогава не включвайте <оператор>, < стойност2> или скоби. Булевите полета винаги имат стойност true или false, така че трябва просто да ги използвате директно, за да установите условието, като например:
{{#if contact.is_vip}}
. -
{{else}}
и{{else if … }}
клаузите не са задължителни. - Условният блок винаги трябва да се затваря с
{{/if}}
.
В следната таблица са изброени всички оператори, които можете да използвате в условните си изрази. Други оператори в момента не са налични, нито можете да използвате сложни булеви изрази (като например с оператори И или ИЛИ) във вашите условни изрази.
Dynamics 365 Customer Insights - Journeys синтаксис (чувствителен към малки и големи букви) | Оператор |
---|---|
eq | Равно на |
ne | Не е равно на |
lt | По-малко от |
gt | По-голямо от |
lte | По-малко или равно на |
gte | По-голямо или равно на |
Например тази условна конструкция може да се използва за установяване на езика, използван в поздрава в съобщението въз основа на държавата на всеки получател на съобщението:
<p>{{#if (eq contact.address1_country 'Denmark')}}
Hej
{{else if (eq contact.address1_country 'US')}}
Hi
{{/if}} {{contact.firstname}}!</p>
Ето пример за условна команда, базирана на извикано is_vip
булево поле (две опции); имайте предвид, че тъй като булевите полета винаги връщат стойност true или false, в условието не са включени оператори, сравнителни стойности или скоби:
<!-- {{#if contact.is_vip}} -->
<h3>Be sure to show your VIP card to receive a 20% discount!</h3>
<!-- {{/if}} -->
Съвет
Можете да тествате за празни стойности на полета с помощта на:
{{#if (eq contact.lastname '')}}
Къде ''
са две единични кавички, а не двойни кавички. Това намира празните полета, но не такива с нулева стойност.
Съвет
Въпреки че не можете да използвате сложни булеви изрази в условните си изрази, можете да приложите подобна функционалност, както следва:
Не се поддържа:
{{#if A and B}}<DisplayedContent>{{/if}
Е еквивалентно на (поддържа се):
{{#if A}}{{#if B}}<DisplayedContent>{{/if}}{{/if}}
Не се поддържа:
{{#if A or B}}<DisplayedContent>{{/if}
Е еквивалентно на (поддържа се):
{{#if A}}<DisplayedContent>{{/if}} {{#if B}}<DisplayedContent>{{/if}}
Съвет
Когато тествате за стойности, които се съхраняват като набор от опции в базата данни, използвайте стойности на показалец за набора от опции, а не за показаните стойности. Например може да имате извикано contact.customertypecode
поле, което съдържа цяло число, за да идентифицира типа клиент, който е. Всеки код на тип клиент също има показвано име, например 0 = „мед”, 1 = „сребро” и 2 = „злато”. В този случай трябва да настроите своя израз да използва показалеца (цяло число), а не съответстващата стойност за показване. Затова ако търсите за клиенти за злато, трябва да използвате:
{{#if (eq contact.customertypecode 2)}}
Съвет
Когато тествате големи числовите стойности, като например „1 932 333”, изпуснете разделителя за хиляди (,) в отчета за сравнение, въпреки че често може да го видите представен в потребителския интерфейс. За да проверите за тази стойност, изразът ви следователно трябва да изглежда като:
{{#if (eq contact.customernumber 1932333)}}
Цикли for-each
Циклите for-each ви позволяват да преминавате през колекция от записи, които са свързани с конкретен текущ запис – например за предоставяне на списък с всички скорошни транзакции, свързани с даден контакт. Можете да добавите кода, който се изисква, за да създадете тези твърдения, като го поставите в елемент за текст или чрез поставяне на елемент на потребителски код между останалите елементи на дизайна. Повече информация: Как да въведете разширено динамично съдържание в дизайнера
Циклите for-each приемат следната форма:
{{#each Entity.RelationshipName }}
...
{{this.RelatedField1}}
...
{{this.RelatedField2}}
...
{{/each}}
Където:
- Блокът на контура винаги трябва да се отваря с
{{#each … }}
. -
Entity.RelationshipName
идентифицира набора от свързани записи, които цикълът ще итерира. - Цикълът започва с първия наличен свързан запис и се повтаря за всеки наличен свързан запис, докато не бъдат изведени в списък всички свързани записи. Обърнете внимание, че свързаните записи ще бъдат връщани в произволен и непредсказуем ред.
-
{{this.RelatedField<n>}}
идентифицира име на поле от свързания запис. Частта „this“ на този израз се отнася за свързания запис, който се обработва в текущата итерация на цикъла, и трябва да е последвана от валидно име на поле за свързания обект. Можете да включвате произволен брой полета във всеки цикъл. - Блокът на контура винаги трябва да се затваря с.
{{/each}}
Например базата ви данни би могла да включва списък с продукти, които даден контакт е поръчал. Бихте могли да ги изброите в имейл съобщение, като използвате следния код:
<p>You have purchased:</p>
<ul>
<!-- {{#each contact.contact_product_productid}} -->
<li>{{this.name}}</li>
<!-- {{/each}} -->
</ul>
В този пример Dynamics 365 Customer Insights - Journeys системата е персонализирана да включва персонализиран обект , наречен product, който е настроен с релация 1:N между контакта и продуктовия обект в полето productid . За да бъде обектът на продукта достъпен за вашите имейл съобщения, той също трябва да бъде синхронизиран с услугата за маркетингови прозрения (както обикновено).
Важно
Само първите 1,000 свързани елемента се добавят към релацията за целите на изобразяването на имейли. Използването на релации с повече от 1,000 елемента не се поддържа в имейл шаблони и може да доведе до неочаквани резултати.
Също така имайте предвид, че връзките от второ ниво не се поддържат. Следователно следният синтаксис не е разрешен:
{{#each Entity.RelationshipOnEntity}}
...
{{#each this.RelationshipOnRelatedEntity}}
...
{{/each}}
...
{{/each}}
Как да въведете разширено динамично съдържание в дизайнера
Трябва да сте внимателни, когато въвеждате разширен динамичен код в дизайнера, защото има много, понякога неочаквани, начини да го направите погрешно, което ще повреди кода ви. Ето някои съвети за това как да въведете и тествате кода си:
- Използвайте елементи с персонализиран код, за да поставите кодови фрагменти между елементите на дизайна в раздела Дизайнер . Това е много по-видимо и надеждно, отколкото поставянето на кода директно в HTML с помощта на HTML раздела. Можете обаче да използвате и динамичен код в текстов елемент, като в този случай вероятно ще трябва да почистите този код в раздела HTML , както е споменато по-нататък в този списък. (Когато работите в редактора на цяла страница, изберете елемент от персонализиран код, за да редактирате съдържанието му.)
- Когато въведете код в текстов елемент в раздела Дизайнер , всички допълнителни интервали и връщане на каретки, които добавите, ще създадат
и<p>
етикети във вашия код, което може да го наруши. Винаги отивайте в раздела HTML след това, където ще видите всички тези допълнителни тагове, и не забравяйте да ги премахнете. - Когато въвеждате код в текстов елемент, целият код на динамично съдържание трябва да се съдържа в набор от начални и крайни маркери (като
<p>
например и</p>
) или в HTML коментар (за код, който е напълно отделен от показания текст). Не поставяйте код извън коментари или валидни двойки HTML тагове (или елементи с персонализиран код), тъй като това ще обърка редактора (особено ако превключвате между разделите HTML и Дизайн ). Трябва да работите върху раздела HTML , да проверите и коригирате HTML в текстовите елементи. - Не поставяйте връщанията на каретката между елементи на кода, които са част от един и същ израз (например в цикъл за всеки), освен ако не оградите всеки ред в собствен набор от HTML тагове (както е илюстрирано в примера за цикъла за всеки, даден след този списък).
- Функцията за персонализиране често е полезна за конструиране на изрази, които извличат стойности от вашата база данни, тъй като ви помага да намерите имена на таблици, полета и релации на база данни. Този инструмент е наличен при работа в текстов елемент в раздела Дизайнер и при въвеждане на стойности са определени полета, които го поддържат (като темата на имейла). Персонализирането не е налично, когато работите в раздела HTML или в елемент на персонализиран код, така че можете вместо това да започнете с използването на персонализиране във всеки текстов елемент и след това да изрежете/поставите получения израз във вашия елемент с персонализиран код или HTML.
- Името на релация, което използвате при създаването на цикли или поставянето на стойности за справка, трябва да съответства на това, използвано в услугата Marketing Insights. Това име на релация не е непременно същото като това, използвано за персонализиране на Dynamics 365. За да намерите правилното име на релацията, използвайте функцията за персонализиране .
Например можете да настроите реда за поздрав на имейл съобщение, като въведете следното в раздела HTML на дизайнера (вътре или извън текстов елемент):
<p>{{#if (eq contact.address1_country 'Denmark')}}Hej{{else if (eq contact.address1_country 'US')}}Hi{{/if}}{{contact.firstname}}!</p>
Следният пример (също показан по-рано) показва как да използвате коментари за затваряне на код, който съществува изцяло извън показаното съдържание (също в раздела HTML ):
<p>You have purchased:</p>
<ul>
<!-- {{#each contact.contact_product_productid}} -->
<li>{{this.name}}</li>
<!-- {{/each}} -->
</ul>