指定された名前のページにプレースホルダの番号を取得する可能性はありますか?例題私はmy-placeholder1、my-placeholder2、my-placeholder3をページに持っています。私は3つのプレースホルダーに自分の名前にmy-placeholderが含まれていることを知る必要があります。Sitecoreプレースホルダの数を取得
1
A
答えて
0
いいえ、プレースホルダの番号を取得する方法はありません。
ページを動的に生成します。それはUser A
とUser B
のために全く異なる出力を生成することができます。
my-placeholder2
は、1人のユーザには表示されず、別のユーザには表示されるレンダリングの中に入れることができます。
これは、最終ページに特定のキーが表示されているプレースホルダの数を表示できないためです。あなたは(私の意見ではreaaaaaaaly悪である)やろう可能性がどのような
は、ページに割り当てられたレイアウトを取得し、すべてのレンダリングを取得し、それらのすべてのために彼らのcshtml
またはaspx
+ ascx
ファイルや使用を得ることですいくつかの正規表現(htmlのもう一つの悪い点)は、特定のキーを持つプレースホルダを数えます。
もう一度 - これがレンダリングされたページで使用される番号であることを決して100%保証することはできません。
1
あなたは使用することができます。
var placeholderName = "my-placeholder";
var renderingReferences = Sitecore.Context.Item.Visualization.GetRenderings(Sitecore.Context.Device, true);
var renderingsInPlaceholder = renderingReferences.Where(r => r.Placeholder.StartsWith(placeholderName, StringComparison.OrdinalIgnoreCase));
var numberOfRenderingsInPlaceholder = renderingsInPlaceholder.Count();
をこのコードを使用すると、これらのプレースホルダ上のコンポーネントを持っているだけの場合に取り組んでいます。したがって、コンポーネントを持つプレースホルダをカウントします。
更新プレースホルダに複数のコンポーネントがある場合は、コンポーネントの数がカウントされます。
関連する問題
- 1. Sitecore。プレースホルダからアイテムを読む
- 2. Sitecore/GlassMapperページを取得
- 3. SiteCoreでアイテムXMLを取得
- 4. Sitecoreの連絡先を取得するSitecore Rest API
- 5. Sitecore Analyticsデータを新しいSitecoreインスタンスに取得する方法
- 6. str.format()を反転する - プレースホルダで引数を取得する
- 7. プレースホルダに表示するSitecoreフォームを取得できません(Web Forms for Marketingersモジュール)
- 8. Sitecore:マスターデータベースからメディアアイテムを取得
- 9. SiteCore 6.5:制御パラメータの取得
- 10. Sitecore MVC:プレースホルダへのパラメータの受け渡し
- 11. TensorFlowでデフォルトのプレースホルダのグラデーションを取得する方法は?
- 12. テキストのプレースホルダを取得する方法は?
- 13. Sitecoreに挿入可能なプレースホルダを使用したコンポーネントの足場
- 14. SitecoreのURLに一致する商品を取得します
- 15. sitecoreですべてのメディアアイテムを取得するには?
- 16. Sitecore 6のsrcとalt属性を取得しますか?
- 17. SitecoreのItemプロパティ/フィールドを取得する方法は?
- 18. Sitecore:アイテムのエイリアスURLを取得する方法
- 19. 偽のサイトからSitecoreアイテムを取得する方法
- 20. Sitecore Glass Mapperすべての兄弟を取得
- 21. Sitecoreメディアライブラリを開くときに404を取得する
- 22. Sitecoreでアイテムを作成した日付を取得
- 23. sitecoreクエリを使用してアイテムを取得する
- 24. 分度器:擬似要素を取得:プレースホルダcss
- 25. cssでプレースホルダにアスタリスクを取得する方法
- 26. 子供たちをsitecoreで取得する
- 27. Sitecore glassmapperレンダリングからデータソースを取得する方法
- 28. Sitecore web API:SitecoreからHTMLコンテンツを取得する
- 29. sitecore項目からフィールド名を取得する
- 30. Sitecoreからデータを取得する方法
私は内部にプレースホルダーを持つレンダリングを持っています。問題は、エディターがレンダリングを複数回追加できることと、同じ名前の2つのプレースホルダーで終わることです。どういうわけか、同じセクションに別のプレースホルダを付けて名前を制御できるようにする必要があります – Radu
ダイナミックプレースホルダを使用する必要があるように聞こえます。市場のためのモジュールがあります:https://marketplace.sitecore.net/en/Modules/I/Integrated_Dynamic_Placeholders.aspx –
リチャードが書いた@Radu:ダイナミックプレースホルダを使用してください。オンラインで多くの実装が無料で利用可能です。正直言って、なぜSitecore OOTBにはないのか分かりません。誰もが望み、必要とするものです。 –