Sitecoreファーストの開発ワークフロー
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
ほとんどのSitecoreファースト プロジェクトは、少なくとも1つの コード ファースト アプリのデプロイから開始し、アプリのルート (アプリ ルート、レンダリング ルート、テンプレート ルートなど) をSitecoreで作成します。初期デプロイ後、アプリはSitecoreファースト開発に移行できます。
Sitecoreファースト ワークフローを使用してJSSアプリを開発する場合、JSSアプリはSitecoreからのデータを使用しますが、そのデータの構造やSitecoreに登録されるコンポーネントを定義する責任はありません。
このワークフローでは、すべての開発者がSitecoreの独自の開発インスタンスを必要とし、JSSアプリはそれに接続してコンテンツとレイアウト データを取得します。
次の場合は、Sitecoreファーストのワークフローを選択することをお勧めします。
-
このプロジェクトは、Sitecoreで働くことを好む経験豊富なSitecore開発者が主導しています。
-
プロジェクトには、複雑なコンテンツまたはバックエンドのアーキテクチャ要求があります。
-
Sitecoreの開発者もJavaScriptアプリケーションを実装しています。
-
JSSアプリは、同じデプロイ プロセスを使用してデプロイおよびバージョン管理されます。
JSSアプリでSitecoreファーストで作業することは、通常のSitecoreサイトの構築とよく似ていますが、いくつかの違いがあります。
レンダリングの作成
レンダリング アイテムを作成する場合は、ビュー レンダリングやXSLTなどの代わりにJson Renderingテンプレートを使用します。このレンダリング テンプレートは、レイアウト サービスによって出力されると、自動的にJSONにレンダリングされます。 Json Renderingテンプレートには、レンダリング コンテンツ リゾルバーの設定、統合GraphQLクエリの設定、プレースホルダーの設定を行うための追加フィールドが含まれています。
また、Json Renderingテンプレートに固有の「コンポーネント名」フィールドは、JSSアプリケーションに登録されているコンポーネントの名前と一致する必要がある文字列です。たとえば、コンポーネント名としてFooを使用してレンダリングを作成した場合、JSS Foo.jsアプリには、コンポーネント マッピングが "Foo" > Foo.js. .コンポーネント名をマッピングできない場合、JSSアプリには、Sitecoreから受信した欠落しているコンポーネントの名前を含むプレースホルダーが表示されます。これを使用して、フロントエンド開発者が実際にコンポーネントのビューを実装する前に、コンポーネント階層をスキャフォールディングできます。
レンダリングにプレースホルダを追加する場合は、レンダリング アイテムのLayout Service Placeholdersフィールドにもプレースホルダを追加する必要があります。そうしないと、レイアウト サービスは子プレースホルダのレンダリングを試みず、レイアウト サービス データで追加されたレンダリングを受け取りません。
ルートの編集と作成
Sitecoreファーストのルートの作成は、従来のSitecoreサイトにページを追加するのと似ています。
スクリプト化されたコンポーネントのスキャフォールディング
Sitecoreファースト アプリケーションで作業する場合、新しいコンポーネントを追加するタスクには、一連の反復的な手順 (レンダリング アイテム、データソース テンプレート アイテム、データソースの場所フォルダーの作成、およびそれらのリンク) が含まれます。これをシンプルにするために、JSSコンポーネントのSitecoreインフラストラクチャをスキャフォールディングするのに役立つJSS CLIコマンドがあります。
-
jss deploy component 新しいコンポーネントをデプロイします。これは、コード ファースト開発で使用される関数manifest.addComponent() と似ていますが、新しいコンポーネントをSitecoreデータベースに直接デプロイします。
-
jss deploy template は、コンテンツ テンプレートや設定アイテムなどとして使用する新しいSitecoreテンプレートをデプロイします。
増分デプロイ
Sitecoreファーストの開発プロセスでは、新しいコード アーティファクトはJSS CLIコマンドjss deploy files でのみデプロイされます。 jss deploy appを使用したパッケージベースのデプロイは、初期デプロイ後のコード優先開発シナリオのみを対象としています。