2011-07-08 9 views
2

サイトの再利用可能なコンポーネントをいくつか作成し、これらのコンポーネントの複数のインスタンスをページに追加しようとすると問題が発生しました。これは、Sitecoreがプレースホルダキーを一意にする必要があるため、問題です。つまり、同じページにプレースホルダを持つサブレイアウトのインスタンスを複数追加することはできませんか?Sitecore - ページ上のサブレイアウトの複数のインスタンス

例:

2つの列sublayout - プレースホルダは2column-col1と2column-COL2 三列はsublayout - プレースホルダは3column-COL1、3column-COL2と3column-COL3ページで は、2つの列sublayoutを追加し、 3列のサブレイアウトと別の2列のサブレイアウト 2column-col1という名前の2つのプレースホルダと、2column-col2という名前の2つのプレースホルダがあります。

これは何ですか?私たちは、動的にプレースホルダキーをユーザコントロールコード内に作成することを考えましたが、プレースホルダ設定を使用する場合は問題が発生します。

したいことが一般的なようです。回避策はありますか?

答えて

3

あなたができることは、プレースホルダキーを動的に作成して、目的の機能を取得し、手動で5-6個のプレースホルダ設定項目を作成し、すべての設定を複製することです。私は1つのプロジェクトでこれを行いましたが、それは非常に醜いですが、うまく動作します。

sitecore 6.4+を使用している場合は、クローンされたアイテムを使用してプレースホルダ設定を作成することさえできます。この方法で、元のアイテムから許可されたサブレイアウトを制御することができ、残りのすべてが値を継承します。

希望に役立ちます。サイトコア6.3.1では

1

私は、この設定は、あなたがそれを試してみると、それを変更する必要がありますサイトコア6

のすべてのバージョンで利用可能であると考えてweb.config

<!-- DUPLICATE PLACEHOLDERS 
     Indicate whether to process duplicate placeholders 
     Default value: false 
    --> 
    <setting name="Rendering.ProcessDuplicatePlaceholders" value="false" /> 

での設定があります"真"にする。

2

これはあなたのSDN投稿と重複していると思いますが、参考のためにブログの投稿(プロトタイプのソリューションコード付き)をここでリンクします。

http://www.techphoria414.com/Blog/Dynamic%20Placeholder%20Keys%20Prototype.aspx

+0

-1リンクはもはや(サイトコアのライセンスエラー!)作品なので、答えは、現在使用不可能であるとして 。 – Kasaku

+0

前のコメントに加えて、ブログは[Googleキャッシュ](http://webcache.googleusercontent.com/search?q=cache:egZb98GYlasJ:www.techphoria414.com/Blog/Dynamic%2520Placeholder%2520Keys%2520Prototype .aspx + http://www.techphoria414.com/Blog/Dynamic%2520Placeholder%2520Keys%2520Prototype.aspx&cd=1&hl=en&ct=clnk&gl=uk&client=firefox-a)ですが、理想的にはこの回答はリンクに依存しません。 1時間前に追加したように、悲しいことに-1を削除することはできません! – Kasaku

+0

壊れたライセンスについてお知らせいただきありがとうございます。それはかなり複雑な答えなので、私を傷つけるのは不公平だと思う。 – techphoria414

関連する問題