【问题标题】:Extension with image: How to get the full image path in the template?带图像的扩展:如何在模板中获取完整的图像路径?
【发布时间】:2013-10-18 01:21:24
【问题描述】:

我使用扩展生成器创建了一个 Typo3 扩展。这些字段之一是图像字段。

在前端渲染实体时,我可以访问此字段,例如:

{entity.image} <!-- results in image.jpg without a path -->

但它只检索文件名。现在我可以创建一个文件夹,所有关于这个扩展的图片都应该被上传,比如:

fileadmin/user_upload/entity

现在我可以像这样在模板中连接它:

<img src=" fileadmin/user_upload/entity/{entity.image}" alt="{entity.name}">

这很好用直到有人多次使用该图像。在这种情况下,Typo3 将创建一个图像并在后端设置 image_01.jpgimage_02.jpg 等。当然,这些图像不存在于新创建的文件夹中。看来,Typo3 在某处创建了一个副本并使用该副本中的名称。

所以我的问题是:

  • 如何在我的模板中获取真实的图像路径?也许在控制器的某个地方?
  • 如何阻止 Typo3 创建这些副本并增加每张图片的数量?
  • image viewHelper &lt;f:image /&gt; 在这里有帮助吗?如果有,怎么做?

这是一个基于 extbase/fluid 的扩展。

【问题讨论】:

  • 您使用的是哪个 TYPO3 版本? 6.x 还是 4.x?解决方案取决于它。
  • @lorenz 我使用标记为 verison 6.1.x - 我发现 Typo3 正在将图像复制到 uploads/tx_nameofextension。对吗?

标签: typo3 typo3-6.1.x


【解决方案1】:

仅作记录,无处记录:

file extension (filetype): {yourfile.originalResource.originalFile.extension}
file size (filesize): {yourfile.originalResource.originalFile.size}
type?: {yourfile.originalResource.originalFile.type}

【讨论】:

    【解决方案2】:

    如果您使用“group”类型的普通字段和 internal_type “file”,TYPO3 会将文件复制到

    uploads/your_extension/
    

    为防止重复,它会为同名的文件添加数字后缀(即使它们相同)。所以你应该从那里引用文件。

    在 TYPO3 6.x 中,您可能会考虑使用文件抽象层。基本上,您将 FAL 的图像字段添加到表/模型中,您将获得文件浏览器以及将文件附加到记录所需的所有内容。

    在您的 Fluid 模板中,您可以访问所有 FAL 属性,例如文件大小、文件扩展名等。有关教程,请参见此处: http://keinerweiss.de/755-typo3-fal-in-einer-eigenen-extbasefluid-extension-einsetzen.html

    【讨论】:

    • 感谢使用抽象层的提示。
    猜你喜欢
    • 1970-01-01
    • 2021-01-27
    • 1970-01-01
    • 1970-01-01
    • 2014-07-30
    • 2012-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多