2015-08-03 2 views
0

Я новичок в Orchard CMS и в основном занимается созданием настраиваемой темы. Я перебежать вопрос, и я не уверен, что я даже не знаю правильные понятия еще за то, что я хочу сделать ..., но здесь идет:Orchard CMS: как отобразить поле содержимого в отдельном виджете?

Я хотел бы сделать следующее:

  • Добавьте настраиваемое поле в тип контента «Страница», называемый «Родительский заголовок».
  • На всех страницах отобразите содержимое поля родительского заголовка внутри зоны виджетов «До основного».

Так автор, который создает новую страницу в CMS будет заполнять поля, например:

  • Название страницы: «Компания АВС Найм»
  • Родитель Название: «Карьера в Компания ABC»
  • т.д.

И обработанная разметка из сада будет выглядеть примерно так (немного упрощенным для краткости):

<div id="layout-before-main"> 
    <div class="zone zone-before-main"> 
     Careers at Company ABC 
    </div> 
</div> 
... 
<div id="content"> 
    <div class="zone zone-content"> 
     <article class="page content-item"> 
      <header><h1>Company ABC is Hiring</h1></header> 

      <p>Some page content.</p> 
     </article> 
    </div> 
</div> 

Я знаю, как создать пользовательское поле; что я не знать, как (или) можно поместить ссылку на значение этого поля внутри другой зоны.

Любые советы приветствуются - я очень хочу учиться!

ответ

3

Есть ли причина, по которой вы хотели бы поместить ее в отдельный виджет? Для этой функции вы можете просто использовать place.info.

Скажите, что у вас есть TextField, прикрепленный к типу содержимого страницы, который называется «ParentTitle». Ваше место размещения будет выглядеть следующим образом:

<Placement> 
    <Match ContentType="Page"> 
     <Place Fields_Common_Text-ParentTitle="/BeforeMain:5" /> 
    </Match> 
</Placement> 

Обратите внимание на предыдущую косую черту перед началом работы. Предыдущий косой чертой означает, что он нацелен на глобальную зону (зону макета).

Если вы хотите получить доступ к месту размещения и тем полям/именам, на которые вы должны нацелиться, включите модуль «Трассировка формы». Это позволяет вам просматривать поля на интерфейсе и видеть, какой идентификатор должен быть нацелен.

Вы можете прочитать следующие статьи, чтобы понять, что происходит:

http://docs.orchardproject.net/Documentation/Customizing-Orchard-using-Designer-Helper-Tools

http://docs.orchardproject.net/Documentation/Understanding-placement-info

+0

Perfect - это начало меня на путь понимания Placement.info и с помощью размещения & чередуется настроить Выход Orchard, вместо того, чтобы пытаться взломать все это вместе, используя миллион Widgets. Благодаря! –

Смежные вопросы