MSM のベストプラクティス

一般

MSM は、コンテンツのデプロイメントを自動化するための設定可能なフレームワークです。多くの場合、実装は Web サイトの主要な部分に影響を及ぼし、複数の組織や地域にわたって行われます。そのため、Web サイトの計画時と同様に、最大限の注意を払って MSM の実装を計画することを強くお勧めします。

  • 実装を開始する前に、入念に​構造およびコンテンツのフローを計画​してください。
  • 最小限必要なカスタマイズだけを行ってください。 MSM では高度なカスタマイズ(ロールアウト設定など)がサポートされていますが、通常はカスタマイズを最小限に抑えることが web サイトのパフォーマンス、信頼性、アップグレード可能性を確保するためのベストプラクティスです。
  • ガバナンス​モデルを早期に確立し、成功に導くための適切なユーザートレーニングを実施してください。多くの場合、ガバナンスの観点から見たベストプラクティスは、ローカルのコンテンツプロデューサーの権限を最小限に抑え、コンテンツを他のローカルユーザーやそれぞれのライブコピーに分散および接続することです。継承の連鎖が管理されていないと、MSM の構造がより複雑になり、パフォーマンスと信頼性が損なわれる可能性があるからです。
  • 構造、コンテンツのフロー、自動化およびガバナンスの計画を立てた後は、プロトタイプを作成し、システムのテストを十分に行って​から、本番の実装を開始してください。
  • MSM を使用したコンテンツ自動化の計画および実装の経験が豊富な​アドビのコンサルティングと一流のシステムインテグレーター​が MSM プロジェクトの導入や実装全般を支援します。

ライブコピーのソースとブループリント設定

ライブコピーは通常のページまたはブループリント設定を使用して作成できます。どちらも有効なソースです。

ブループリント設定を使用する追加の利点は次のとおりです。

  • 作成者がブループリントで「ロールアウト」オプションを使用して、このブループリントから継承されるライブコピーに変更を(明示的に)プッシュできます。
  • 作成者が「サイトを作成」を使用できます(これにより、ユーザーが簡単に言語を選択し、ライブコピーの構造を設定できます
  • ブループリントと関係があるライブコピーのデフォルトのロールアウト設定を定義できます。

ブループリント設定が参照されない場合、ロールアウトはライブコピー自体からのみ開始でき、基本的にはソースからコンテンツを引っ張ってきます。

ライブコピーで新しいサイトを作成する際には、ブループリント設定を作成して MSM のすべての機能セットを使用可能にすると便利です。

メモ

「権限」タブの CUG をブループリントからライブコピーにロールアウトすることはできません。ライブコピーを設定する際には、この点を考慮してください。

コンポーネントとコンテナの同期

一般に、コンポーネントの同期に関する MSM のロールアウトルールは、次のとおりです。

  • コンポーネントは、ブループリントに含まれるリソースを同期してロールアウトされます。
  • コンテナは、現在のリソースのみを同期します。

これは、コンポーネントが集計として扱われ、ロールアウトでは、コンポーネント自体およびそのすべての子がブループリントのものと置き換えられることを意味します。これは、リソースがそのようなコンポーネントにローカルで追加されると、ロールアウト時にブループリントのコンテンツでなくなることを意味します。

コンポーネントのネストをサポートするには、そうしたローカルで追加されたコンポーネントがロールアウトで維持され、そのコンポーネントがコンテナとして宣言される必要があります。

メモ

プロパティ cq:isContainer をコンポーネントに追加し、コンテナとして指定します。

サイトの作成

AEM でライブコピーを作成する方法は、主に次の 2 つです。

  • ライブコピーの作成時:より一般的なアプローチであり、任意のページからライブコピーを作成できます。ライブコピーのコンテンツ構造はソースと完全に一致します。

  • サイトの作成時:より特殊なアプローチであり、主に多言語構造の Web サイトの作成に使用します。

サイトを作成する際に留意する点のいくつかを次に示します。

  • 新しいサイトを作成するには、ブループリント設定が必要です。
  • 新しいサイトに作成する言語のパスの選択を許可するには、対応する言語ルートがブループリント(ソース)内に存在する必要があります。
  • 新しいサイトをライブコピーとして作成作成サイト​を使用)すると、そのライブコピーの最初の 2 つのレベルは「シャロー」になります。ページの子はライブ関係には属しませんが、トリガーに一致するライブ関係が見つかった場合には引き続きロールアウトが引き継がれます。

以下を避けると便利です。

  • ブループリント(最初のレベルの下)に言語を手動で追加する。
  • 言語ルートの直下に手動でコンテンツを追加しても、この新しいコンテンツはロールアウト時にライブコピーに自動的に移動しません。

MSM と多言語の Web サイト

MSM は、次の 2 つの方法で多言語 Web サイトを作成するために役立ちます。

言語マスターを作成する際は、次の点に注意してください。

  • MSM 自体に​コンテンツ翻訳機能は備わっていません​が、翻訳に対応したサードパーティの翻訳コネクタと統合できます。次の点に留意してください。
    • MSM では、ページレベルまたはコンポーネントレベルで継承をキャンセルできます。これにより、次回ロールアウト時にライブコピーの翻訳済みコンテンツがブループリントの未翻訳コンテンツで上書きされるのを防止できます。
      • 一部のサードパーティの翻訳コネクタでは、この MSM の継承の管理が自動化されます。
      • 詳しくは、翻訳サービスプロバイダーにお問い合わせください。
      • 言語マスターを作成して翻訳する代わりに、言語コピーを AEM の標準翻訳統合フレームワークと組み合わせて使用することもできます。

詳しくは、多言語サイトのコンテンツの翻訳および翻訳のベストプラクティスを参照してください。

構造の変更とロールアウト

ブループリントやソースツリー内のコンテンツ構造の変更は、ライブコピーへの反映のされ方が異なります。これは、変更の内容によって変わります。

  • ブループリントに新しいページを​作成​すると、標準のロールアウト設定を使用したロールアウト後に、対応するページがライブコピーに作成されます。
  • ブループリント内のページを​削除​すると、標準のロールアウト設定を使用したロールアウト後に、対応するページがライブコピーから削除されます。
  • ブループリント内のページを​移動​すると、標準のロールアウト設定を使用したロールアウト後に、ライブコピー内の対応するページは移動​されません
    • この動作になる理由は、ページの移動にはページの削除が暗黙的に含まれているからです。つまり、オーサー環境でページを削除すると、パブリッシュ環境の対応するコンテンツが自動的にアクティベート解除されることになり、結果として、パブリッシュ環境で予期しない動作が発生する可能性があります。これは、リンクやブックマークなどの関連項目にも影響することがあります。
      • それぞれのライブコピーページにおけるコンテンツの継承は更新され、ブループリントのソースの新しい場所が反映されます。
      • ブループリントからライブコピーにページ移動を完全に実現するには、ページ移動のベストプラクティスを検討してください。

ページ移動のベストプラクティス

ライブコピーでページを移動する場合は、次のベストプラクティスを考慮してください。

メモ

これはロールアウト時のトリガーでのみ動作します。

  1. カスタムロールアウト設定を作成します。
    • この新しい設定には、PageMoveAction アクションを含める必要があります。
    • この設定に他のアクションを追加しないでください。
  2. 新しい設定を配置します。
    • ページ移動を完全にロールアウトするときにライブコピー内の各ページをそれぞれ古い場所から削除する場合:
      • 新規に作成した設定を標準ロールアウト設定の前に配置します。古い場所にあるページは、標準ロールアウト設定に基づいて削除されます。
      • ページ移動をロールアウトするときに、ライブコピー内の各ページをそれぞれ古い場所に維持する場合(つまりコンテンツを複製する):
        • 新規に作成した設定を標準ロールアウト設定の後に配置します。これにより、ライブコピー内のコンテンツが削除されたり、パブリッシュ環境からアクティベートが解除されたりすることはありません。

ロールアウトのカスタマイズ

MSM のロールアウト設定は高度なカスタマイズが可能です。ロールアウトの自動化は広範囲に影響を及ぼす場合があります。ベストプラクティスとして、次のアクティビティを行う前に、十分に入念に計画する必要があります。

onModify

ロールアウトトリガー onModify を使用する際には、次の点に留意してください。

  • onModify トリガーを使用したロールアウトの自動化は、オーサリングのパフォーマンスに悪影響を及ぼす場合があります。これは、ページ変更のたびにロールアウトがトリガーされるためです。
  • ロールアウト結果は、次のように予想に反する場合があります。
    • 実行される変更イベントの順序は指定できません。
    • イベントベースのアーキテクチャでは、ロールアウトマネージャーに渡されるイベントの順序は保証されません。
  • このようなロールアウト設定を使用すると、同じリソースの同時更新が発生した場合にコミットが競合する可能性があります。

したがって、onModify トリガーを使用するのは、発生する可能性があるパフォーマンス問題よりも自動ロールアウトのメリットのほうが大きい場合のみにすることをお勧めします。

ノードタイプ/プロパティ

MSM では、ロールアウトアクションのカスタマイズに加えて、ロールアウトするノードプロパティのカスタマイズも可能です。MSM の OSGi 設定では、ソースからライブコピーにコピーするノードタイプを除外できます

その他の情報

MSM とライブコピーについて詳しくは、次の記事を参照してください。

このページ