1

我遇到了和这个人一样的问题-> https://stackoverflow.com/questions/61383959/typo3-fal-in-flexform。所以我使用了这个答案,但我在添加数据处理器时遇到了一些问题。目前我渲染元素是这样的:
tt_content.gridelements_pi1.20.10.setup {
1 < lib.gridelements.defaultGridSetup
1 {

prepend = COA
prepend {

  10 = TEXT
  10.value = </div><div class="bg-img-section">


  20 = IMAGE
  20 {
    file {     
      import = uploads/tx_gridelements/
      import.data = field:flexform_image
    }
    dataProcessing {
      10 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
      10 { 
        references.fieldName = image as = image 
      }
    }
    stdWrap.wrap = <div class="image">|</div>
  }

  30 = TEXT
  30.value = </div><div class="inner">

}}}

FE 中没有显示图像。我真的试图自己解决这个问题,但我找不到解决方案。我将非常感谢任何帮助或解释

4

1 回答 1

1

您要使用的 dataProcessing 在错误的位置实现,因为 IMAGE cObject 没有 dataProcessing 参数,但 FLUIDTEMPLATE cObject 有。

此外,TypoScript 代码显示您没有使用 Gridelements 的 dataProcessing 静态文件,而是使用 USER cObject 的基于静态的经典插件。

因此,您应该尝试使用 FILES cObject 而不是 IMAGE:

tt_content.gridelements_pi1.20.10.setup {
  1 < lib.gridelements.defaultGridSetup
  1 {

    prepend = COA
    prepend {

      10 = TEXT
      10.value = </div><div class="bg-img-section">
    
      20 = FILES
      20 {
           references {
              table = tt_content
              uid.field = uid
              fieldName = myFlexformFieldName
           }
     
           begin = 0
           maxItems = 5
    
           renderObj = IMAGE
           renderObj {
              file.import.dataWrap = {file:current:storage}:{file:current:identifier}
              altText.data = file:current:title
              wrap = <div class="image">|</div>
           }
       }
   
       30 = TEXT
       30.value = </div><div class="inner">

     }
  }
}
于 2021-03-27T12:19:57.977 回答