相対シリアライゼーション・パス・ハッシュとエイリアシング
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Sitecore Content Serialization (SCS) システムは、ハッシュを使用して、ファイル システムに対して長すぎるパスを短縮します。また、人間が読めるハッシュのエイリアスも提供します。
シリアル化されたコンテンツ項目のファイル・システム・パスは、1つの絶対パスと3つの相対パスによって決定されます。
-
絶対base path.これは、プロジェクトがファイルシステム内の場所である場所です。
-
相対的なserialization path.これは、SCSシステムがコンテンツ項目をシリアル化する場所です。
-
相対的なinclude path.これは、コンテンツアイテムを保存する必要があるフォルダーに付けた名前です。
-
相対的なcontent item path.これは、Sitecoreインスタンス内のコンテンツ アイテムのパスです。
SCSシステムは、ベース・パス、シリアライゼーション・パス、インクルード・パス、およびコンテンツ・アイテム・パスをファイル・システム・パスとファイル名に連結します。
たとえば、次の4つのパスについて考えてみます。
-
C:\Users\Peter\Sitecore\Project\src\Sites\ はベース パスです。
-
serialization\ はシリアル化パスです。
-
content\ はインクルードパスです。
-
Home\Products\Toys\Ball.ymlは、コンテンツ・アイテムのパスです。
SCSシステムは、パスを次のファイル・システム・パスとファイル名に連結します。
C:\Users\Peter\Sitecore\Project\src\Sites\serialization\content\Home\Products\Toys\Ball.yml
このパスとファイル名は、最新のファイルシステムでは長すぎませんが、コンテンツワーカーは、ファイルシステムの最大パスとファイル名の長さに違反するコンテンツアイテムパスを作成できます。この状況を回避するために、コンテンツ アイテムの最大パス長を構成できます。
SCSシステムは、次の方法でこの最大長を尊重します。
-
コンテンツ項目のパスが十分に短くなるまで、コンテンツ項目のパス セグメントを削除します。
-
削除されたコンテンツ項目のパス セグメントを1つのハッシュ値にハッシュ化します。
-
ハッシュ値を残りのコンテンツ項目パスと連結します。
例えば、コンテンツ・アイテム・パスの最大長が20に設定されていて、コンテンツ・アイテム・パス・パスを /Home/Products/Toys/Ball(24文字) にシリアライズする場合、SCSシステムは /Home/Products/Toys/ を1つの値にハッシュ化し、それをBall.yml to a C:\Users\Peter\Sitecore\Project\src\Sites\serialization\content\<hash value>\Ball.ymlに連結します。
ハッシュ値が人間が読み取るには不適当すぎる場合は、ルールにパスエイリアスを追加できます。パスエイリアスは、定義するカスタムハッシュ値です。
たとえば、コンテンツ項目のパス /Home/Producs/Toys/Ballをhptoys/Ballにハッシュするには、次のaliasルールに追加します。
"rules": [
{
"path": "/Home/Products/Toys/Ball",
"alias": "hptoys"
}
]
SCSシステムは、シリアル化されたコンテンツ項目をC:\Users\Peter\Sitecore\Project\src\Sites\serialization\content\hptoys\Ball.ymlに格納するようになりました。