AEM開発者ブログ by YAMATO

アドビ社のデリバリーパートナー大和株式会社のAEM開発者ブログです。

【詳解】"Create Site"機能を使ってサイト構造を再利用しよう

AEM Developerの皆様、こんにちは!
大和株式会社の青葉です。

今回は、既に作成したサイト構造(複数ページのまとまり)を再利用できる、"Create Site"機能についてご紹介します。

特徴

  • 新しいコンテンツルートとしてサイト構造を作成できる
  • 既存のコンテンツルート下の任意の場所にもサイト構造を作成できる
  • "Create Site"でサイト構造を作成した時、ページに含まれているボタンコンポーネントなどのリンクも更新される
    • 例:/content/wknd/us/en/magazine/content/yamato/us/en/magazine に更新される

使い方

まず、以下を済ませていることが前提になります:

  • ブループリント設定(Blueprint Configuration)を既に作成していること
  • ブループリントとして設定されたサイト(複数ページのまとまり)を既に作成していること
  • コアコンポーネントをインストールしていること

手順はシンプルです:

(1) サイトコンソールを開く
(2) "Create"をクリック
(3) "Site"をクリック
(4) 任意のブループリント設定を選択し、"Next"をクリック
(5) サイト作成先などの項目を入力し、"Create"をクリック

もっと詳しく

上記手順の (5) に該当する、ブループリント設定を選択した後の"Create Site"画面には以下の入力項目があります:

  1. Initial Languages
  2. Initial Chapters
  3. Destination Path
  4. Title
  5. Name
  6. Site Owner
  7. Live Copy
  8. Rollout Configs

f:id:yamato_tech:20210803171936p:plain
"Create Site"画面
(AEM SDKバージョン: 2021年 6月、コアコンポーネントバージョン: 2.17.2を使用)

順番に詳しく見ていきましょう。

Initial Languages

ブループリントとして設定されたサイトのうち、言語ルートとなるページを自動的に全て取得して表示してくれます。

言語ルートのページの名前が2文字のISO言語コード(例:en、frなど)、または、言語コードと国コードの組み合わせ(例:pt-br、en_USなど)になっていることがポイントですね。

特定の言語を削除することもできますし、そのまま反映する場合は特に編集する必要はありません。

Initial Chapters

ブループリントとして設定されたサイトのうち、言語ルートの1つ下の階層に該当するページ(Chapter)を自動的に全て取得して表示してくれます。

項目としては言語ルートの1つ下の階層にあるページ単体を指しているように見えますが、実はそのページ(Chapter)にぶら下がっている子ページ全ても含まれています。

Initial Languagesと同様、特定のページ(Chapter)を削除することも可能です。

Destination Path

サイトの作成先を設定します。/contentにして新しいコンテンツルートとして作成することもできますし、既存のサイト構造の任意の場所に作成することもできます。

Title

これから作成するサイトのルートとなるページのタイトルを設定します。

Name

これから作成するサイトのルートとなるページの名前を設定します。Titleは必須項目になっていますが、Nameを未入力のままサイトを作成してしまうと、元のブループリントと同じ名前がついてしまうのでご注意ください。

例えば、Titleは"Yamato"に設定して、Nameを未入力のまま作成すると、新しく作成されたサイトのルートとなるページのタイトルと名前は以下になります:

  • ページタイトル:Yamato
  • ページ名前:language-masters

必須項目にはなっていませんが、できればタイトルと合うように任意の名前をつけた方が良いでしょう。

Site Owner

AEMに存在するユーザーまたはグループを設定する必須項目です。新しくユーザー名を入力して設定することもできます。

サイト作成時に1回設定するだけで、再び編集することはない項目になっています。

Site Ownerを誰に設定したのか確認したい場合は、CRXDE にて該当するページのjcr:contentノードのcq:siteOwnerプロパティで確認できます。

Live Copy

チェックをつけると、これから作るサイトの各ページがライブコピーとして作られます。 サイト作成後の特徴としては2点あります:

  • サイトコンソールの References で(どのページを元にして作られたのか)ブループリントを確認できる
  • 作成されたサイトの各ページのページプロパティに Live Copy タブが追加される

Rollout Configs

これから作成するサイトに適用するロールアウト設定を選択します。ただし、1つ前の項目 ”Live Copy” にチェックをつけないと反映されないので注意が必要です。

ここで設定したロールアウト設定は後でページプロパティの Live Copy タブにて編集することもできます。

該当ページのjcr:content/cq:LiveSyncConfigノードのプロパティに注目すると、cq:rolloutConfigsプロパティで設定内容が確認できますね。

さいごに

既に1つ以上のサイトが作成されている状態で、新規サイトをこれから作るタイミングで既存のサイト構造を再利用できる便利な機能です。

機会があれば、ぜひ使ってみましょう!