7

As far as I know, there's no such thing as an f:link.file or v:link.file viewhelper.

There used to be a solution using file.originalResource.publicUrl as the value to point the link to, as in

<f:link.page pageUid="{file.originalResource.publicUrl}" target="_blank">

Am I right that this is no longer necessary? I got this (using ext:mask):

<f:link.page pageUid="{file.identifier}" target="_blank">

returning the same value, while originalResource.publicUrl would not even show up in f:debug.

BUT in file.identifier the storage path, e.g. fileadmin, is not present. How do I add it to the viewhelper?

Or, what is the currently recommended solution for a link to a file in TYPO3 7.6?

Urs
  • 4,984
  • 7
  • 54
  • 116
  • See below at https://stackoverflow.com/a/69551991/160968 – now there is a VH for TYPO3 11 – Urs Oct 30 '21 at 11:37

4 Answers4

12

Just use <a href="{file.publicUrl}">{file.name}</a>. When absolute URL or some special configuration is needed use <f:link.typolink parameter="{file.publicUrl}">{file.name}</f:link.typolink>.

minifranske
  • 1,295
  • 6
  • 12
  • yess, thanks! Why don't I get that property with `{file}`? It only gives me `propertiesOfFileReference, name, mergedProperties, uidOfFileReference, originalFile` – Urs Nov 04 '16 at 20:14
4

TYPO3 11 introduced a new ViewHelper for this

<f:link.file file="{file}" target="_blank">Download</f:link.file>

https://docs.typo3.org/other/typo3/view-helper-reference/11.5/en-us/typo3/fluid/latest/Link/File.html

Tobias Gaertner
  • 1,155
  • 12
  • 30
2

For me, @minifranske’s solution worked only as a hint: I needed to use {file.originalResource.publicUrl} instead:

<f:link.typolink parameter="{file.originalResource.publicUrl}">{file.originalResource.title}</f:link.typolink>

also available:

{file.originalResource.name}
{file.originalResource.description}
{file.originalResource.alternative}

Nevertheless, if anybody knows a proper core solution which resembles that of the Rich Text Editor, I’d be happy to hear about it:

<a href="t3://file?uid=123">file link</a>
<a href="t3://page?uid=123">page link</a>
clive beckett
  • 152
  • 16
1

<f:uri.image image="{imageObject}" /> produces the path + filename for your FAL object.

  • 1
    This produces the path to a rendered image of my PDF file – I just want a link to it – Urs Nov 02 '16 at 22:49