繁体   English   中英

如何在typo3中使用div包装图像?

[英]How to wrap image with div in typo3?

为了删除默认的环绕图像,我使用了以下模板代码:

tt_content.image.20.rendering.noWraps {
  imageRowStdWrap.dataWrap = |
  noRowsStdWrap.wrap = |
  oneImageStdWrap.dataWrap = |
  imgTagStdWrap.wrap = |
  editIconsStdWrap.wrap = |
  caption.wrap = |
}
# Set this as active rendering method
tt_content.image.20.renderMethod = noWraps

我想在特定部分的代码上方覆盖它。

这是我这样做的代码:

SCREENSHOTS<styles.content.get
SCREENSHOTS.select.where = colPos = 9
SCREENSHOTS.renderObj.dataWrap = <div class="screen">|</div>

没用 怎么做?

根据CONTENT对象文档

由于在上述的例子.renderObj没有明确设置,TYPO3将自动设置1.renderObj <tt_content,以便renderObj将引用tt_content的Typo脚本的配置。 相应的TypoScript配置将被复制到renderObj。

由于您声明了SCREENSHOTS.renderObj.dataWrap = <div class="screen">|</div>您不会正确地将任何配置自动复制到renderObj

如果我理解您的目标正确,那么您希望删除“仅图像”内容元素的所有环绕并将其全部包裹在一个div标签<div class="screen">|</div> 以下内容未经测试,但如果您提供的第一个阻止的代码适用于所有“仅图像”内容元素,则它们应该起作用。

# Create a new renderMethod named 'noWraps' which can be used across the whole system
tt_content.image.20.rendering.noWraps {
  imageRowStdWrap.dataWrap = |
  noRowsStdWrap.wrap = |
  oneImageStdWrap.dataWrap = |
  imgTagStdWrap.wrap = |
  editIconsStdWrap.wrap = |
  caption.wrap = |
}

SCREENSHOTS < styles.content.get
SCREENSHOTS {
  select.where = colPos = 9
  renderObj < tt_content
  renderObj {
    # Set renderMethod to 'noWraps' only for this section
    image.20.renderMethod = noWraps

    # Change the default wrapping around the content element but only if it's a 'image only' contant element
    stdWrap.innerWrap >
    stdWrap.innerWrap.cObject = CASE
    stdWrap.innerWrap.cObject {
      key.field = CType
      default < tt_content.stdWrap.innerWrap.cObject
      image = TEXT
      image.value = <div class="screen">|</div>
    }
  }
}

如果上面的代码不起作用,那么只需写一个注释,然后我将对其进行研究。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM