2016-07-27 8 views
0

Как можно создавать собственные зоны в своих взглядах, так что они могут поместить виджеты в них: частиOrchard CMS: Создавать зоны в ваших собственных формах/представлениях по форме макета?

  • Я не говорю локальные зоны/элемент контента, как на @ Display.CustomZone и Placement.info,
  • , ни я пытаюсь прикрепить пользовательские зоны к форме макета,

, а метод в основном повторить то, что форма компоновки управляет по умолчанию, но в пределах своей собственной формы/зрения.

Я считаю, что форма Layout использует zoneHolding - поэтому, я думаю, вам нужно было бы унаследовать от zoneHolding, чтобы достичь вышеуказанного, но это просто опасно для догадки.

+0

Я предполагаю, что с помощью «голосования вниз» решение очевидно; «Позаботиться об этом?» – puggycode

ответ

0

Чтобы иметь зоны в макете, вам нужно только отредактировать Layout.cshtml вашей темы:

@Display(Model.MyCustomZone) 

Чтобы иметь возможность добавлять виджеты на них, панель Orchard должны сначала знать зон. Вы можете определить их в вашей темы «Theme.txt»:

Name: My Theme Name 
Author: .. 
Description: .. 
Version: .. 
Tags: Awesome 
Website: http://orchardproject.net 
Zones: MyCustomZone, .., .., .. 
0

Я думаю, вы хотите, чтобы сделать зону макета в пределах вашей формы/точки зрения, надеюсь, я могу понять ваш вопрос.

Чтобы сделать это, вы должны добавить имя зоны к вашей теме Theme.txt, как devqon упоминалось, то, чтобы сделать это в любой форме вы хотите, просто используйте этот код:

@Display(WorkContext.Layout.ZoneName) 

Примечание: вы не» t нужно отображать его в вашем макете, если это не обязательно.

+0

Ага, я думаю, я понимаю его вопрос неправильно. Обратите внимание, что он также должен отредактировать файл theme.txt, чтобы на самом деле иметь возможность добавлять в них виджетов на панели управления :) – devqon