typo3:CASE无法使用sys_file_reference中的其他字段

时间:2015-01-15 06:48:30

标签: mysql typoscript typo3-6.2.x

我使用自己的扩展在“sys_file_reference”表中构建一个名为“tx_references_special”的新字段。在typo3后端的“textpic” - 内容元素中,我可以通过在BE.So中的图片中检查此数组来选择此字段,数据库中的字段“tx_references_special”为“0”或“1”。

我想在textpic-elements中为“with this array-selected”图片定义类。因此,我在main-template-setup中构建了以下的typoscript。 问题是,在这个CE上只为两个图片呈现了类“默认”。有谁知道,为什么?

lib.projects=CONTENT
lib.projects{
table = tt_content
select {
where = header_layout = 14
}  
renderObj = COA
renderObj {
10 = TEXT
10.field = header
10.wrap=<div id="header_projects">|</div>

20 = TEXT
20.field = bodytext
20.wrap=<div id="bodytext_projects">|</div>

30=FILES
30{
  references{
    table=tt_content
    fieldName=image
  }

  renderObj=CASE
  renderObj{
    key.data=sys_file_reference:tx_references_special

    default=IMAGE
    default {
      wrap=<div class="default">|</div>
      file{
        width=313m
        height=220m
        import.data=file:current:publicUrl
      }

    }

    1=IMAGE
    1 {
      wrap=<div class="itworks">|</div>
      file{
        width=313m
        height=220m
        import.data=file:current:publicUrl
      }
    }
  }
}
}
}

1 个答案:

答案 0 :(得分:0)

早上好,

我是以另一种方式得到的。

我的目标是为照片分配不同的类别以定位它们。使用以下代码可以正常工作。如果我在BE中设置值,那么图片得到的是类app_pic,如果我没有,那么图片就会获得类图标。

lib.projects=CONTENT
lib.projects{
table = tt_content
select {
  where = header_layout = 14
}  
renderObj = COA
renderObj {
  10 = TEXT
  10.field = header
  10.wrap=<div id="header_projects">|</div>

  20 = TEXT
  20.field = bodytext
  20.wrap=<div id="bodytext_projects">|</div>

  30=FILES
  30{
    references{
      table=tt_content
      fieldName=image
    }

    renderObj=IMAGE
    renderObj{
      stdWrap.wrap=<div class="app_pic">|</div>
      stdWrap.wrap.override=<div class="icon">|</div>
      stdWrap.wrap.override.if {
        value=1
        equals.data=file:current:tx_references_special
      }
      file{
        width=313m
        height=220m
        import.data=file:current:publicUrl
      }
    }

    }
    }
    }