5

私は、ホームページに使用される 2 つのテンプレートを持つ Sitecore (6.4.0.101124) サイトに取り組んでいます。これらは非常によく似た構造を持っています。それらの大きな違いは、標準値のプレゼンテーションの詳細のコントロール セクションにそれぞれ 1 つの異なるサブレイアウトがあることです。私の理解では、アイテムでテンプレートが変更された場合、テンプレートの標準値がそのアイテムに適用されるべきです。ただし、コンテンツ エディターがテンプレートを変更しても、プレゼンテーションの詳細は、私が変更するまで同じままです。

したがって、これは、これがどのように機能するかを誤解しているか、何かおかしなことが起こっていることを意味します。これは、このスレッドで議論されている問題と非常によく似ていますが、この項目はブランチ テンプレートを使用して作成されていないため、与えられた回答は当てはまらないようです。

誰かがこれについて同様の経験をしたことがありますか(そしてそれを解決しましたか)?これがどのように機能するはずなのか、私はベースから外れていますか?

4

3 に答える 3

8

あなたが書く:

私の理解では、アイテムでテンプレートが変更された場合、テンプレートの標準値がそのアイテムに適用されるべきです。

これは、フィールドが編集されていない場合にのみ当てはまります。アイテムのフィールドが編集されると、編集された値がデフォルトよりも優先されます。テンプレートを異なる標準値を持つテンプレートに変更すると、フィールドが変更されていない場合、またはユーザーが [フィールドのリセット] ボタンを使用してフィールドをデフォルト値にリセットした場合にのみ影響があります。(フィールドを手動でクリアしてもうまくいかないことに注意してください。Sitecore は空の文字列を保存し、標準値を上書きします。[リセット] ボタンを使用すると、フィールドがデータベース ヌルに設定され、標準値が使用されます。 .)

リセットボタン

コンテンツ エディターのフィールドの横にある「標準値」というテキストを確認することで、フィールドが編集されたかどうかを確認できます。

基準値表示のヒント


Sitecore 6.4.0 とレイアウト デルタ

Sitecore 6.4.0 以降の Renderings フィールドでは、このリリースで「レイアウト デルタ」と呼ばれる機能が導入されたため、状況はより複雑になります。レイアウト デルタの前に、アイテムのプレゼンテーションの詳細を編集すると、Sitecore はレイアウト情報を標準値の [レンダリング] フィールドからアイテムの [レンダリング] フィールドにコピーしていました。このアイテムの表示への影響。

条件付きレンダリング ロジックを追加するなど、個々のアイテムの表示の詳細に小さな変更を加えると、標準値からの継承が壊れてしまうため、この機能により、表示の変更を管理することが難しくなりました。アイテムのクラスの表示を変更する必要がある場合は、最初に標準値を変更し、次に表示を変更したすべてのアイテムに同じ変更を加える必要がありました.

Sitecore 6.4 のレイアウト デルタでは、アイテムの表示を変更すると、標準値レンダリングの完全なコピーではなく、変更のみがアイテムのレンダリング フィールドに保存されます。この変更またはデルタ情報は、標準値レンダリング情報の上に適用されるため、標準値レイアウトへの変更は、表示が変更されていないアイテムだけでなく、すべての継承アイテムに適用されます。

コンテンツ編集者がアイテムの表示を変更したようです。テンプレートが切り替えられると、この変更は新しいテンプレートの上に適用されます。これは、問題のアイテムの [レンダリング] フィールドの横にある [標準値] テキストを確認することで確認できます。

于 2012-10-04T04:43:05.627 に答える
3

テンプレートには値がありますが、そのテンプレートを使用して作成されたアイテムに値を運ぶのは、標準値アイテムにあります。そうは言っても、そのテンプレートから作成されたアイテムの各フィールドには、テンプレートの標準値を使用しているかどうかを示すフラグがあります。プレゼンテーションの詳細がまだ標準値を使用しているというフラグが立てられていない場合、アイテムへの更新はカスケードされません。

ここで.. ブランチとテンプレートの違いを確実に理解するために.. ブランチは、アイテムを作成する方法の一種の「モデル」です。ブランチ アイテムに変更を加えても、変更がカスケードされることはありません。アイテムは、TEMPLATE 標準値から値を継承します。ブランチの値は、アイテムの作成時にのみ継承されます。

EDIT:ちなみに、左側のガターをオンにしてオーバーライドされたプレゼンテーションを表示すると、プレゼンテーション値が標準値であるかどうかを確認できることを追加する必要があります。アイコンが表示されている場合は、アイテムが現在標準値を使用していないことを示しています。

于 2012-10-02T00:22:53.367 に答える
1

私がこの質問にたどり着いたのは、何百ページにもわたるフィールドを変更する必要があったからです。そもそも共有されていません。テンプレート内でフィールドを Shared & Unversioned に設定しようとしましたが、変更を加えたときにどこでも変更されることはありませんでした。

次に、テンプレートの標準値をフィールドに希望する値に設定し、標準値を強調表示した後、[バージョン] -> [フィールド] -> [リセット] を選択しました。初めてこれを行ったとき、フィールドが空白にリセットされました。それからもう一度やり直したところ、その特定のフィールドを使用するすべてのページでフィールドが変更されました。お役に立てれば。そもそも共有されていないフィールドが既にある場合は、標準値をリセットする必要があるようです。

于 2013-06-13T20:21:04.780 に答える