この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

CMSConnectSource

コンテンツをエクスペリエンスビルダーサイトに提供する外部のコンテンツ管理システムの接続情報を表します。Metadata メタデータ型を拡張し、その fullName 項目を継承します。

変更セットで使用する場合、CMSConnectSource は Network および Community と連動します。

メモ

ファイルのサフィックスおよびディレクトリの場所

CMSConnectSource コンポーネントのサフィックスは .cmsConnectSource で、cmsConnectSource フォルダに保存されます。このフォルダには、ネットワークごとに個別のファイルが存在します (networkname.sourcedevelopername.cmsConnectSource など)。各ファイルが CMS 接続を表します。

バージョン

CMSConnectSource コンポーネントは、API バージョン 43.0 以降で使用できます。

特別なアクセスルール

「CMS Connect 組織」権限を有効にする必要が���ります。

項目

項目名 項目の型 説明
cmsConnectAsset CMSConnectAsset[] 接続で定義された CSS または JavaScript を表します。
  • 0 ~ 10: CSS
  • 0 ~ 10: JavaScript
cmsConnectLanguage CMSConnectLanguage[] 0 以上。接続で定義された、言語の対応付けを表します。
cmsConnectPersonalization CMSConnectPersonalization[] 0 または 1。接続で定義されたパーソナライズを表します。typeAEM の場合にのみ使用します。
cmsConnectResourceType CMSConnectResourceType[] 0 ~ 5。接続で定義された JSON 定義を表します。
connectionType CMSSourceConnectionType(string 型の列挙) 必須。外部システムで使用する認証の種類。有効な値は、次のとおりです。
  • Public
  • Authenticated
cssScope string CSS ルールのプレフィックスや範囲を設定するために使用するクラス名。
developerName string 必須。CMSConnectSource エンティティの API 参照名。
languageEnabled string 必須。有効な値は、次のとおりです。
  • 接続で言語の対応付けを有効にするには、Y
  • 言語の対応付けが不要な場合は、N
masterLabel string 必須。接続名
namedCredential string connectionTypeAuthenticated の場合は必須です。namedCredential の API 参照名。namedCredential をリリースする前に、これが対象組織に存在する必要があります。
personalizationEnabled string 必須。有効な値は、次のとおりです。
  • 接続でパーソナライズの対応付けを有効にするには、Y
  • それ以外の場合は、N
rootPath string 必須。ルートパス。
sortOrder int 必須。ページに複数の接続が定義されているときの接続の読み込み順序を定義します。読み込み順序は 1 から始まります。
status CMSConnectionStatus(string 型の列挙) 必須。接続の状況。有効な値は、次のとおりです。
  • ACTIVE
  • INACTIVE
type CMSConnectionSourceType(string 型の列挙) 必須。受信元接続システムの識別。有効な値は、次のとおりです。
  • AEM
  • Drupal
  • WordPress
  • SDL
  • Sitecore
  • Other
websiteUrl string connectionTypePublic の場合は必須です。

パッケージを受信したときに既存の接続が存在する場合があるため、一部の INSERT または UPDATE ロジックを考慮してください。

  • 受信先で developerName が見つかった場合、既存のコレクションを受信元のすべての詳細で更新します。
  • namedCredentialdeveloperName を介して処理されます。developerNamenamedCredential が見つからない場合、エラーが生成されます。
  • 受信先が受信元の sortOrder でない場合、受信元の sortOrder を使用して挿入または更新します。
  • 受信元の sortOrder が受信先にすでに存在する場合、受信先の sortOrder が受信元の sortOrder よりも大きくなるように、受信元の sortOrder に 1 を加えて接続します。

メモ

CMSConnectAsset

CMSConnectAsset は、JavaScript や CSS ファイルなど、受信するコンテンツをサポートするために必要なアセットの場所、タイプ、および順序を定義します。

パッケージを受信したときに既存の接続が存在する場合があるため、一部の INSERT または UPDATE ロジックを考慮してください。

  • 受信先に assetPath が存在する場合は、既存のレコードを更新し、存在しない場合は、新しい assetPath を挿入します。
  • 受信元の sortOrder を常に保持し、それに応じて受信先を調整します。

メモ

項目名 項目の型 説明
assetPath string アセットの相対パス。
assetType string

Apex で使用する場合、この値を enum 型として送信できます。それ以外の場合、この項目は string 型です。

string 型として使用できる値
  • CSS
  • Javascript

enum 型として使用できる値

  • CSS
  • Javascript
sortOrder int ページへの読み込み順序。

CMSConnectLanguage

CMSConnectLanguage コンポーネントはコンテンツの表示言語を決定します。

項目名 項目の型 説明
cmsLanguage string URL パスに language プレースホルダが含まれる場合、この値を使用してプレースホルダを置き換えます。
language string Salesforce でサポートされる言語。

CMSConnectPersonalization

CMSConnectPersonalization は Adobe Experience Manager (AEM) と共にのみ使用されます。

パッケージを受信したときに既存の接続が存在する場合があるため、一部の INSERT または UPDATE ロジックを考慮してください。パーソナライズが受信元システムで有効になっておらず、受信先で有効になっている場合、受信先は無効になります。接続のレコードはテーブルから削除されます。

メモ

項目名 項目の型 説明
connectorPage string 作成して AEM にインストールした JSP ファイルへのパス。
connectorPageAsset string Javascript ファイルへのパス。このパスを指定すると、スクリプトを動的に実行できます。

CMSConnectResourceType

CMSConnectResourceType は JSON 接続を定義するためにのみ使用します。

パッケージを受信したときに既存の接続が存在する場合があるため、一部の INSERT または UPDATE ロジックを考慮してください。受信先で API 参照名が見つかった場合、既存のレコードを受信元のすべての詳細で更新します。

メモ

項目名 項目の型 説明
cmsConnectResourceDefinition cmsConnectResourceDefinition[] CMSConnectResourceType ごとに 0 ~ 10 を使用できます。
developerName string CMSConnectResourceType の API 参照名。
masterLabel string コンテンツタイプ名。
resourceType string 使用できる値は JSON のみです。

CMSConnectResourceDefinition

cmsConnectResourceDefinition は JSON 接続を定義するために使用します。

パッケージを受信したときに既存の接続が存在する場合があるため、一部の INSERT または UPDATE ロジックを考慮してください。

  • 受信先で developerName が見つかった場合、既存のレコードは新しい受信元のすべての詳細で更新され、見つからない場合、新しい値が挿入されます。
  • 現在の受信元が DETAIL であり、受信先に別の名前の DETAIL がある場合、受信先は LIST に更新され、受信元が DETAIL として挿入されます。

メモ

項目名 項目の型 説明
developerName string 必須。CMSConnectResourceDefinition の API 参照名。
masterLabel string 必須。コンテンツ項目またはコンテンツリストの developerName。
options int 必須。外部からのコンテンツが単一項目かリストかを識別します。

0: コンテンツリスト

1: コンテンツ項目

payloadType string 必須。有効な値は JSON のみです。
resourceIdPath string ID への相対パス。コンテンツ項目の場合は必須です。
resourceNamePath string リソース名への相対パス。コンテンツ項目の場合は必須です。
resourcePath string 必須。JSON リソースパス。
rootNodePath string コンテンツリストおよびコレクションの場合のみ。コレクションまたはリストの初期の開始パスを定義します。

宣言的なメタデータの定義のサンプル

CMSConnectSource 定義の例を次に示します。

1<?xml version="1.0" encoding="UTF-8"?>
2<CMSConnectSource xmlns="http://soap.sforce.com/2006/04/metadata">
3    <cmsConnectAsset>
4        <assetPath>etc/designs/capricorn/app-prefixed.min.css</assetPath>
5        <assetType>CSS</assetType>
6        <sortOrder>1</sortOrder>
7    </cmsConnectAsset>
8    <cmsConnectAsset>
9        <assetPath>etc/designs/capricorn/w3data.js</assetPath>
10        <assetType>Javascript</assetType>
11        <sortOrder>1</sortOrder>
12    </cmsConnectAsset>
13    <cmsConnectLanguage>
14        <cmsLanguage>en</cmsLanguage>
15        <language>en_US</language>
16    </cmsConnectLanguage>
17    <cmsConnectLanguage>
18        <cmsLanguage>fr</cmsLanguage>
19        <language>fr</language>
20    </cmsConnectLanguage>
21    <cmsConnectPersonalization>
22        <connectorPage>content/salesforceConnector.js</connectorPage>
23        <connectorPageAsset>content/js/capricorn/assets.js</connectorPageAsset>
24    </cmsConnectPersonalization>
25    <cmsConnectResourceType>
26        <cmsConnectResourceDefinition>
27            <developerName>Details</developerName>
28            <masterLabel>Details</masterLabel>
29            <options>0</options>
30            <payloadType>JSON</payloadType>
31            <resourceIdPath>ID</resourceIdPath>
32            <resourceNamePath>title</resourceNamePath>
33            <resourcePath>rest/v1.1/sites/cmstry.wordpress.com/posts/{component}</resourcePath>
34        </cmsConnectResourceDefinition>
35        <cmsConnectResourceDefinition>
36            <developerName>List</developerName>
37            <masterLabel>List</masterLabel>
38            <options>1</options>
39            <payloadType>JSON</payloadType>
40            <resourcePath>rest/v1.1/sites/cmstry.blog.wordpress.com/posts?number={itemsPerPage}&amp;page={pageNumber}</resourcePath>
41        </cmsConnectResourceDefinition>
42        <developerName>Posts</developerName>
43        <masterLabel>Posts</masterLabel>
44        <resourceType>JSON</resourceType>
45    </cmsConnectResourceType>
46    <connectionType>Public</connectionType>
47    <cssScope>capricorn</cssScope>
48    <developerName>Capricorn</developerName>
49    <languageEnabled>Y</languageEnabled>
50    <masterLabel>Capricorn</masterLabel>
51    <personalizationEnabled>Y</personalizationEnabled>
52    <rootPath>content/capricorn/{language}</rootPath>
53    <sortOrder>11</sortOrder>
54    <status>ACTIVE</status>
55    <type>AEM</type>
56    <websiteUrl>https://public-api.wordpress.com</websiteUrl>
57</CMSConnectSource>

package.xml の例を次に示します。

1<Package xmlns="http://soap.sforce.com/2006/04/metadata">
2    <types>
3        <members>NetworkA.*</members>
4        <name>CMSConnectSource</name>
5    </types>
6    <version>43.0</version>
7</Package>

特定の接続を取得するには、次のように定義します。

1<Package xmlns="http://soap.sforce.com/2006/04/metadata">
2    <types>
3        <members>NetworkA.DeveloperName</members>
4        <name>CMSConnectSource</name>
5    </types>
6    <version>43.0</version>
7</Package>

使用方法

受信した情報の INSERT または UPDATE ロジックは常に UPSERT です。データがエンティティに含まれない場合、データは挿入され、データがエンティティに含まれる場合、現在のデータが更新されます。

更新/挿入を実行する前に、次の最大制限に対してパッケージのコンテンツが検証されます。

  • CSS アセット <= 10
  • JavaScript アセット <= 10
  • リソース種別 < =5
  • 種別ごとのリソース定義 <=10

  1. 新規接続の検証では、受信したパッケージの要素のみを合計します。
  2. 既存の接続の検証では、既存のアセットと新規要素を合計して有効性を評価します。たとえば、対象組織の接続に 6 個の CSS 定義がすでに存在し、受信したパッケージに 7 個の CSS 定義 (4 個の新規と 3 個の既存) が含まれるとします。新しい定義数は、データベースからの現在の 6 個に、受信したパッケージからの 4 個の新規定義を加えて合計で 10 個になります。パッケージ内の重複する 3 個は無視されます。この 10 個の定義数は、しきい値である 10 アセット以下のため、検証に合格します。

パッケージからの詳細を対象組織に保存するときの各エンティティの処理方法の詳細は、次のコンテンツを参照してください。

説明
CMSConnectSource
  • 受信先で developerName が見つかった場合、既存のコレクションを受信元のすべての詳細で更新します。
  • namedCredentialdeveloperName を介して処理されます。developerNamenamedCredential が見つからない場合、エラーが生成されます。
  • 受信先が受信元の sortOrder でない場合、受信元の sortOrder を使用して挿入または更新します。
  • 受信元の sortOrder が受信先にすでに存在する場合、受信先の sortOrder が受信元の sortOrder よりも大きくなるように、受信元の sortOrder に 1 を加えて接続します。
CMSConnectAsset
  • 受信先に assetPath が存在する場合は、既存のレコードを更新し、存在しない場合は、新しい assetPath を挿入します。
  • 受信元の sortOrder を常に保持し、それに応じて受信先を調整します。
CMSConnectPersonalization パーソナライズが受信元システムで有効になっておらず、受信先で有効になっている場合、受信先は無効になります。接続のレコードはテーブルから削除されます。
CMSConnectResourceType 受信先で API 参照名が見つかった場合、既存のレコードを受信元のすべての詳細で更新します。
CMSConnectResourceDefinition
  • 受信先で developerName が見つかった場合、既存のレコードは新しい受信元のすべての詳細で更新され、見つからない場合、新しい値が挿入されます。
  • 現在の受信元が DETAIL であり、受信先に別の名前の DETAIL がある場合、受信先は LIST に更新され、受信元が DETAIL として挿入されます。

マニフェストファイル内のワイルドカードのサポート

このメタデータ型では、package.xml マニフェストファイル内のワイルドカード文字 * (アスタリスク) がサポートされます。マニフェストファイルの使用についての詳細は、「zip ファイルを使用したメタデータのリリースと取得」を参照してください。