---タイトル:「キャンペーンテンプレートをプログラム的に使う」slug:「campaign-templates-programmatically」 abstract:「キャンペーン作成プロセスを効率化するためにキャンペーンテンプレートを使う。」

キャンペーンテンプレートをプログラム的に扱う

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

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

このトピックは、マーケティングオートメーションキャンペーンテンプレートをプログラム的に活用する方法を説明しています。

キャンペーンテンプレートはSitecore.Marketing.Automation.Definitions.AutomationCampaignTemplates.AutomationCampaignTemplateDefinitionManagerクラスによって管理されます。それらは以下のパスでマスターデータベースに保存されます: */sitecore/system/Marketing Control Panel/Marketing Automation Templates*

自動化キャンペーンテンプレートマネージャーにアクセスする

AutomationCampaignTemplateDefinitionManagerはSitecore DIコンテナから入手可能です。

コンストラクタ注入

public MyClass(IAutomationCampaignTemplateDefinitionManager manager){}

サービスロケーター

IAutomationCampaignTemplateDefinitionManager manager = ServiceLocator.ServiceProvider.GetRequiredService();

自動化キャンペーンテンプレートを定義する

自動化キャンペーンテンプレートと自動化キャンペーンは同じ構造を共有し、IAutomationPlanDefinitionを実装します。詳細は「 自動化計画」をご覧ください。

自動化キャンペーンテンプレートを保存してください

AutomationPlanDefinition campaignTemplate = CreateTemplate(); IAutomationCampaignTemplateDefinitionManager manager = ServiceLocator.ServiceProvider.GetRequiredService(); manager.SaveAsync(campaignTemplate);

既存の自動化キャンペーンテンプレートを更新する

AutomationPlanDefinition campaignTemplate = CreateTemplate(); IAutomationCampaignTemplateDefinitionManager manager = ServiceLocator.ServiceProvider.GetRequiredService(); manager.SaveAsync(campaignTemplate); campaignTemplate.Name = "Updated Name"; manager.SaveAsync(campaignTemplate);

自動化キャンペーンテンプレートを削除してください

manager.Delete(campaignTemplateId);

自動化キャンペーンテンプレートを取得する

// Get by ID and culture. Will get the latest active version IAutomationPlanDefinition automationCampaingTemplate = manager.Get(automationCampaingTemplateId, new CultureInfo("da"));

// Get by ID and culture. Will get the latest version, including if the version is inactive IAutomationPlanDefinition automationCampaingTemplate = manager.Get(automationCampaingTemplateId, new CultureInfo("da"), true);

// Get a specific version by ID, culture and version number IAutomationPlanDefinition automationCampaingTemplate = manager.Get(automationCampaingTemplateId, new CultureInfo("da"), 3);

エイリアスを使ってオートメーションキャンペーンテンプレートを取得する

CultureInfo culture = new CultureInfo("fr-fr"); var automatoinCampaignTemplate = definitionManager.GetByAlias("My alias", culture);

すべての自動化キャンペーンテンプレートを取得する

// Get All with defaults which will be first page, page size 20, latest active versions only ResultSet<DefinitionResult> campaignTemplates = manager.GetAll(new CultureInfo("da"), new RetrievalParameters<IAutomationPlanDefinition, string>());

// Get page 2 ResultSet<DefinitionResult> campaignTemplates = manager.GetAll(new CultureInfo("da"), new RetrievalParameters<IAutomationPlanDefinition, string>(pageNumber: 2));

// Include inactive versions ResultSet<DefinitionResult> campaignTemplates = manager.GetAll(new CultureInfo("da"), new RetrievalParameters<IAutomationPlanDefinition, string>(), true);

!注自動化キャンペーンテンプレートをプログラム的に有効化することはできません。AutomationCampaignTemplateDefinitionManagerのActivateAsyncメソッドが呼び出されるか、SaveAsyncが呼び出されてアクティベートパラメータがtrueに設定されている場合、NotSupportedExceptionが発生します。

この記事を改善するための提案がある場合は、 お知らせください!