基本的にはあなたの特別な願いは、デフォルトのプレビューが提供するよりも、より複雑なプレビューを作成することです。この場合、以下のような戦略は次のとおりです。?
- あなたのテンプレートで、あなたはプレビューアイテム
- を示していることを検出し、あなたがそれ
たいと、これはどのように行われて最適化されたプレビューを表示基本的にプレビューアイテムは、entityIDまたはguid(アプリケーションのエクスポート/再インポート後にこの機能が動作することを保証したい場合)のどちらかで高信頼性で検出できます。
コードはca.この
// detect the demo item, because we shouldn't add inner content while still showing this one
var isDemoItem = Content.EntityGuid.ToString() == "e90752f1-29d5-46a3-984c-408d97feae91"; // use your demo-item guid here
var fakeList = new List<DynamicEntity>();
fakeList.Add(Content);
fakeList.Add(Content);
fakeList.Add(Content);
@foreach (var Content in (isDemoItem ? fakeList : AsDynamic(Data["Default"])))
{
...
}
当社のコンテンツ・アコーディオンのアプリのよう(まだ公開されていないが、githubの中に見える)がデモアコーディオンが誤ってプレビュー項目
でそれ内のコンテンツを取得していないことを保証するために、同様の戦略を使用しています
https://github.com/2sic/app-accordion-bootstrap3/blob/master/_Accordion.cshtml
質問があるかどうかわかりません。私はそれを言い換えようとしましょう:あなたはアイテム(タイル、リンクブロックまたは何か)のリストを持っていて、プレビューで3つのアイテムを見たいので見栄えがいいです。また、モジュールを完全に初期化しないとテンプレートページを作成する必要があるだけです。正しい? – iJungleBoy
はい、モジュールの初期化をせずに3つのアイテムをプレビューして、ページのテンプレートを作成できるようにしたいと思います。現在、私は1つのアイテムのプレビューでのみこれを達成できます。私はモジュールがページに置かれるたびに3つの項目のプレビューを落とす方法があるのかと思っていますね? – denisjoconnor