首先,这是打字稿:
20 = TEXT
20 {
value {
field = field_title
wrap = |.txt
}
filelink {
stdWrap.wrap = <li>|</li>
path = fileadmin/txt-files/
}
} 我得到的结果是:
<li>
<a href="/fileadmin/txt-files/Title.txt">
<img src="typo3/sysext/frontend/Resources/Public/Icons/FileIcons/txt.png">
</a>
</li>我需要的是:
<li>
<a href="/fileadmin/force_download_script.php?filepath=/fileadmin/txt-files/Title.txt">
<img src="typo3/sysext/frontend/Resources/Public/Icons/FileIcons/txt.png">
</a>
</li>我需要使链接可下载,而不是打开浏览器中的文件。为此,我有一个force_download_script.php,但当我这样做时:
wrap = fileadmin/force_download_script.php?filepath=|txt与当前的包装不同,filelink再也找不到文件了。
我试过使用ATagBeforeWrap.wrap,但它看起来并不是为了这个目的而制作的。我也尝试过typolinkConfiguration.wrap,但没有成功。
你知道怎么做到这一点吗?也许用COA?
谢谢!
发布于 2018-07-16 06:57:13
我不会用脚本,而是通过服务器配置来完成这个任务。如果使用Apache并启用了.htaccess,则可以将配置添加到文件所在目录中的.htaccess文件中。请参阅https://css-tricks.com/snippets/htaccess/force-files-to-download-not-open-in-browser/
或者,您也可以使用属性。然而,Internet不支持这一点(但Edge支持它)。
发布于 2018-07-13 18:05:57
这个问题可能会变得相当复杂,但一步一步地:
wrap = fileadmin/force_download_script.php?filepath=|.txt
txt失踪前的那个点。
尽管如此,如果php-脚本被触发,还是很有趣的。typo3conf/LocalConfiguration.php中的一些设置、安装工具中的一些设置,脚本可能不会被触发。管理面板可能有助于调试有关脚本的某些内容,但如果没有,则必须首先在自己的代码中包含一些调试输出,如果核心(临时)还不够的话。
所以你必须找出你的脚本是否被触发,如果没有,原因是什么。
发布于 2018-07-16 06:45:47
你确定.filelink是你要找的吗?
.filelink用于一组文件。对于.path给出的文件夹中的所有文件,将生成一个链接。请参阅手册
从您的描述中,您需要一个包含一个指向单个文件的链接的文本。对于.typolink来说,这将是一个更大的问题,您可以在.parameter中指定链接。
如果您真的想要一个包含多个文件的链接列表,那么每个文件都需要用脚本包装,您需要修改.typolinkConfiguration.parameter,这将是.filelink。
无论如何,也许可以做一个包装,这样就可以:
.typolinkConfiguration.parameter.wrap = /fileadmin/force_download_script.php?|也许用.stdWrap.filelist构建列表更容易,在这里您可以以任何方式使用文件名为A-标记包装您自己的href参数。
https://stackoverflow.com/questions/51328592
复制相似问题