在流体模板中,我想输出链接文件的大小。
我正在使用f:link.page链接到该文件,因为我认为这是这样做的方法(如果没有,请更正)。
<f:link.page class="download" pageUid="fileadmin/redaktion/download/papers/{paper.download}" {paper.author}">PDF</f:link.page>
由于我已经在网站上使用扩展名ml_links,我想我可以通过lib.parseFunc_RTE传递链接,但是
<f:format.html parseFuncTSPath="lib.parseFunc_RTE"><f:link.page class="download" pageUid="fileadmin/redaktion/download/papers/{paper.download}" {paper.author}">PDF</f:link.page></f:format.html>
只需将其包装到p.bodytext中。
我是否必须使用不同的语法来应用f:format.html TO f:link.page - 还是有更好的方法(通过流体或vhs viewhelper)?
当我使用fluidcontent时,我还安装了vhs扩展程序,然后使用:
<f:format.bytes decimals="1">{v:media.size(path: '{file}')}</f:format.bytes>
这将输出干净的可读大小,如“28.2 MB”。
实际上,自定义VH是实现这一目标的最快方法,即基于on this VH,你需要用文件路径替换size
param,然后使用PHP的filesize
函数来获取字节大小。
如果您正在使用VHS,您可以考虑使用https://fluidtypo3.org/viewhelpers/vhs/master/Media/SizeViewHelper.html(与f:format.bytes
结合使用)。
在较新的TYPO3版本中,您可以使用FileReference对象的originalResource.size
属性。
{file.originalResource.size -> f:format.bytes()}
或者在你的情况下:
{paper.download.originalResource.size -> f:format.bytes()}