2014-02-27 2 views
0

Я пытаюсь добавить раздел в расширение моей жидкой страницы.Раздел в файле feedext

<f:section name="Configuration"> 
    <flux:flexform id="default" label="Gallery Page" icon="{f:uri.resource(path: 'Icons/DefaultPage.png')}"> 
     <flux:flexform.section name="images"> 
      <flux:flexform.field.file name="ls" label="Landscape image" maxItems="1" minItems="1" required="1" showThumbnails="1" /> 
      <flux:flexform.field.select name="lsAlign" label="Alignment of the landscape image" items="left,right" /> 
      <flux:flexform.field.file name="pt" label="Portrait image" maxItems="1" minItems="1" required="1" showThumbnails="1" /> 
      <flux:flexform.field.select name="ptAlign" label="Alignment of the portrait image" items="left,right" /> 
     </flux:flexform.section> 

     <flux:flexform.grid> 
      <flux:flexform.grid.row> 
       <flux:flexform.grid.column colPos="0" name="Main Content" /> 
      </flux:flexform.grid.row> 

      <flux:flexform.grid.row> 
       <flux:flexform.grid.column colPos="1" name="Gallery Images" /> 
      </flux:flexform.grid.row> 
     </flux:flexform.grid> 
    </flux:flexform> 
</f:section> 

Если я попробую это, бэкэнд останется пустым, если я попробую открыть свойства открытой страницы. Как только я удаляю раздел, все в порядке. Также попытался поставить объект felexform.object вокруг полей внутри раздела

<flux:flexform.section name="images" label="images"> 
      <flux:flexform.object name="imageObject" label="image object"> 
       <flux:flexform.field.file name="ls" label="Landscape image" maxItems="1" minItems="0" required="0" 
              showThumbnails="1"/> 
       <flux:flexform.field.select name="lsAlign" label="Alignment of the landscape image" 
              items="left,right"/> 
       <flux:flexform.field.file name="pt" label="Portrait image" maxItems="1" minItems="0" required="0" 
              showThumbnails="1"/> 
       <flux:flexform.field.select name="ptAlign" label="Alignment of the portrait image" 
              items="left,right"/> 
      </flux:flexform.object> 
     </flux:flexform.section> 

также не повезло.

Markus

ответ

2

Если вы в настоящее время предпросмотра TYPO3 6.2 (текущий главный филиал, до сих пор не издававшиеся на момент написания этого), то вы могут очень сильно испытывать эту ошибку: http://forge.typo3.org/issues/56405

Если вы находитесь на TYPO3 6.1, эта функция должна работать, и на эту ошибку не должно влиять ошибка в приведенной выше ссылке. В оставшейся части этого ответа я буду предполагать, что вы используете 6.1 или что ошибка, о которой идет речь, каким-то образом исправлена ​​в вашем локальном репозитории, например, просмотрев запрос слияния, связанный с этим URL-адресом.

Вы немного непонятно, на котором «раздел» удалить, чтобы восстановить бэкенд - если это f:section по имени Configuration вы удаляете, это заставит fluidpages игнорировать шаблон. Если это flux:flexform.section вы удаляете, чтобы получить его работу, там может быть несколько причин для этого неудачу:

  • Использование ссылки на файлы внутри Objects в Flux формах (NB: Object требуется, вы не можете размещать поля непосредственно внутри флюса Section) могут оказывать неблагоприятное воздействие на системы с FAL. TCA, используемый FAL, легко манипулируется тем, что он несовместим с полями flexform (поля Flux по-прежнему отображаются как поля flexform для TYPO3), что может привести к ошибкам.
  • Использование Section и Object в шаблоне fluidpages имеет одно ограничение: объекты, которые вы храните, не могут быть унаследованы подстраницами из-за того, что значения по умолчанию в настоящее время обрабатываются TYPO3. Возможно, будущие версии Flux могут каким-то образом решить эту проблему, но в настоящее время это ограничение, с которым вам приходится работать.

Если вы пострадали в любой из первых возможных проблем, ошибки будут сообщались и размещены либо в вашем devlog (см расширения devlog), в вашем syslog (в соответствии с настройками в TYPO3 инструменте установки) или в ваш журнал ошибок PHP (в соответствии с настройками вашего веб-сервера или PHP). Если вы не знаете, как проверить эти журналы, вы можете прочитать одно и то же сообщение, включив «режим отладки» в настройке расширения Flux (внутри Extension Manager). Установка этого значения в «2» должна обеспечивать только просмотр ошибок, а не общих сообщений обратной связи. Сообщение об ошибке может помочь вам решить проблему - или вы можете добавить ее к этому вопросу, и я буду учитывать ее в редактировании.

И наконец, если вы ожидаете, что это Section и Object, чтобы быть унаследованными подстраницами, вы столкнетесь с блокировщиком - в настоящее время это просто невозможно. Код Object должен использоваться на той же странице, что он определен, но недоступен для подстраниц (по крайней мере, не обойти обходные пути, например, используя данные Flux, получающие ViewHelper и разрешение страницы UID страницы).

Если вы блокированы таким образом, я предлагаю вместо:

  • Создать SysFolder или повторно использовать общую память Системной директории
  • Вставьте элемент контента в этот подкаталог и сделать этот элемент контента в FCE, который содержит Object вы желаете.
  • Используя поля конфигурации шаблона страницы, ссылайтесь на этот элемент содержимого (например, тип relation на tt_content или поле ввода с помощью мастера просмотра).
  • На выходе вашего шаблона страницы вручную визуализируйте этот конкретный элемент содержимого по идентификатору UID с помощью v:content.render и аргумента contentElementUids="{0: myFieldName}", где myFieldName - это имя поля конфигурации вашей страницы. Обратите внимание: список UID представляет собой массив!

Альтернатива:

  • Добавить специальную страницу содержимого столбца
  • Настройка рендеринга этого столбца с slide набор на v:content.render - например, со значением -3 скользить специальный содержимого столбца верхней страницы к первые три уровня подстраниц.

Надеюсь, это поможет Маркусу - если нет, не стесняйтесь добавлять более точную информацию о желаемой реализации.

+0

Привет, Клаус, извините за путаницу - я говорил о 'flux: flexform.section', и я использую последний TYPO3 6.2-dev. Тем временем это немного яснее. Проблема связана с подстраницами. Я присмотрюсь и вернусь к вам. –

+0

Привет, Клаус, теперь я могу воспроизвести поведение: у меня есть два шаблона страниц. Значение по умолчанию (не использует flexform.section) и Gallery (использует flexform.section). Если я скажу, что моя корневая страница использует шаблон галереи и задает подстраницы также для использования шаблона галереи, я не могу редактировать свойства страницы подстраниц. Если я скажу корневой странице использовать шаблон по умолчанию и подстраницы для использования шаблона Gallery, все будет хорошо. Кажется, проблема, если страница и подстраницы используют шаблон «section». –

1

Раздел должен содержать объект, который содержит поля:

<flux:flexform.section name="images" label="images"> 
    <flux:flexform.object name="foo2" label="foo2"> 
+0

Как я уже упоминал в своем вопросе, я пробовал это уже, но безуспешно. Я добавил код выше. –