---
title: "言語の退却と出版"
slug: "language-fallback-and-publishing"
abstract: "Sitecore Experience Edge Connectorが配信プラットフォームにアイテムを公開する際、どの言語のフォールバック依存関係をサポートするかのルールを学びましょう。"
---
# 言語の退却と出版

Experience Edge Connectorは、配信プラットフォームにアイテムを公開する際の [言語フォールバック](https://doc.sitecore.com/xp/ja/developers/hd/22/sitecore-headless-development/language-fallback.md "Language fallback") をサポートします。

> !注Edgeに言語フォールバックを使うアイテムを公開する場合、各フォールバック言語のバージョンは少なくとも一度は公開し、Edgeへの依存関係を確立する必要があります。フォールバックバージョンが公開されるまでは、その言語でアクセスされた際には、例えばサイトマップリンクやAPI応答を通じてアクセスしてもその内容が表示されません。
> 
> すべてのフォールバックバージョンが一度公開された後は、英語などの主要言語だけを公開すればよい。その後の公開作業中、Edgeの公開プロセスはフォールバック言語の依存関係を自動的に維持し、各バージョンを個別に再公開することなくコンテンツが最新の状態に保たれます。

公開項目の手順は、初めて公開する場合か、言語のフォールバック依存関係がある項目を再公開する場合によって異なります。

-   フォールバック言語バージョンを*初めて*公開する際は、Edgeに保存されるように各バージョンを公開しなければなりません。
-   その後、アイテムのフォールバック言語バージョンを公開すると、Experience Edgeコネクターが他の依存言語バージョンもチェックし、それらも公開します。これにより、Experience Edgeのすべての依存言語でアイテムの静的コンテンツが利用可能になります。

このトピックでは、*各項目の初回公開後に*自動的にフォールバック言語バージョンの公開が独立して行われる方法について説明します。

## アイテムレベルの言語フォールバック

以下の図は、3つの言語からなるフォールバックチェーンを持つ項目レベルの言語フォールバックの例を示しています。

![How item-level language fallback works.](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/hd/22/sitecore-headless-development/images/lang-fallback-1.png)

図では、Sitecoreには項目3の英語版が1つしかありません。

Sitecore動的にレンダリングする際、en-nzのアイテムをレンダリングしようとする際にenのフォールバックバージョンを使用します(バージョンは存在しません)。

静的にレンダリングする際、Experience Edgeコネクタはこの項目を公開し、すべての依存言語(en-au、en-nz)に対してフォールバックバージョンを用いて、Experience Edgeで同様の結果を得ることができます。次のセクションでは、Experience Edge Connectorがどのように言語のフォールバックをサポートしているかを詳しく説明します。

Experience Edge Connectorがアイテムのフォールバック言語バージョンを公開すると、他の依存言語を取得し、そのアイテムのバージョンを持たない言語も識別し、それらも公開します。

図の言語には以下の依存関係があります:

-   en-nz は en-auに直接依存します。
-   en-au は enに直接依存します。
-   en-nz は に間接的に依存している en。

Experience Edge Connectorは公開時に以下の動作を行います:

-   項目1のen版の公開
    
    すべての従属言語は項目1のバージョンを持っています。言語のフォールバックは不要で、1 en版のみが公開されます。
    
-   項目2のen版の公開
    
    項目2の直接依存言語en-auのバージョンがあります。言語のフォールバックは不要で、公開されたItem 2のen版のみです。
    
-   項目2のen-au版の公開
    
    項目2にはすべての従属言語でバージョンがあるわけではありません。言語のフォールバックが使用されており、en-nzバージョンも項目2です。
    
-   項目3のen版の公開
    
    項目3にはすべての従属言語でバージョンがあるわけではありません。言語のフォールバックが使用されており、en-au版とen-nz版もアイテム3に公開されています。
    

## フィールドレベルの言語フォールバック

Experience Edgeコネクターがアイテムのフォールバック言語バージョンを公開すると、コネクターは依存言語も取得し、そのアイテムのフォールバックフィールド値を持つバージョンを特定し、それらも公開します。以下の図の例のセットアップは、フィールド言語のフォールバックを持つアイテムを示しています:

![How field-level language fallback works.](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/hd/22/sitecore-headless-development/images/lang-fallback-2.png)

図の言語には以下の依存関係があります:

-   en-nz は en-auに直接依存します。
-   en-au は enに直接依存します。
-   en-nz は enに間接的に依存します。

Experience Edge Connectorは公開時に以下の動作を行います:

-   項目1のen版の公開
    
    すべての従属言語はアイテム1のバージョンを持ち、フォールバックフィールドはそれぞれの言語で独自の値を持ちます。言語のフォールバックは不要で、1 en版のみが公開されます。
    
-   項目2のen版の公開
    
    項目2には直接依存言語en-auのバージョンがあり、フォールバックフィールドは独自の値を持ち、言語フォールバックは適用されず、アイテム2 enバージョンのみが公開されます
    
-   項目2のen-au版の公開
    
    項目2はすべての依存言語にバージョンがあり、フォールバックフィールドにはフォールバックの値があります。言語のフォールバックが使用され、en-nz版も公開されています。
    
-   項目3のen版の公開
    
    項目3はすべての依存言語にバージョンがあり、フォールバックフィールドにはフォールバックの値があります。言語のフォールバックが使用され、en-au版とen-nz版も公開されています。
    

## 言語間の依存関係の識別

このセクションでは、Experience Edge Connectorが公開しなければならない依存言語バージョンを特定するプロセスについて説明します。

手続きは以下の通りです:

1.  コネクターはシステム言語間のフォールバック依存関係(図のen <- en-au <- en-nz )を準備します。
2.  コネクターがアイテムのバージョンを公開すると、フォールバック依存関係から、公開されたバージョンに基づいて依存言語のリストを作成します。
3.  コネクターは、依存言語に対してアイテムレベルの言語フォールバックが適用可能かどうかを検証します。アイテムベースのフォールバックは以下の場合に利用可能です:
    -   アイテムは [アイテムのフォールバックが有効](https://doc.sitecore.com/xp/ja/developers/hd/22/sitecore-headless-development/overview-of-setting-up-language-fallback/enable-and-set-up-language-fallback.md "Enable and set up language fallback")です。
    -   その項目には依存言語のバージョンはありません。
4.  コネクターは、フィールドレベルの言語フォールバックが依存言語に適用可能かどうかを検証します。フィールドレベルのバックアップは以下の場合に利用可能です:
    -   この項目には、フィールドレベルの言語フォールバックが有効化された1つ以上のフィールドがあります。
    -   アイテムは従属言語のバージョンを持ち、フィールド(またはフィールド)の値はフォールバック言語(公開版)から取られます。