2017-05-10 15 views
0

TYPO3の新機能であるため、ファイルリストにあるPDFファイルへのリンクを簡単に作成できるかどうかは疑問でした。次のようにあなたは、単純なHTMLで希望:TYPO3流体:PDFファイルへのリンクを作成する方法(ダウンロード、表示なし)

<a href="filePathOnServer/file.pdf">Click here to open pdf (in a new window)</a> 

私は拡張子を必要としないか、それがページ上direclty (<flux:field.inline.fal name="settings.image" required="1" maxItems="1" minItems="1"/>)

をPDFにレンダリングしないと、これまでに解決策を見つけることができなかったなら/ <f:link.external href="filePathOnServer/file.pdf">でこれを行うことはできますか?私は動作しませんでした<f:link.external>を使用してみました

EDIT

を(私が...これが動作するかどうかのチェックから私を防止し、現時点では別の問題を持っています)。当分の間、私は(非流動性)を使用しています<a>-tag ...

+0

リンクが静的である場合は、流体なViewHelperをしたいのはなぜ?絶対パスとして 'Click here to open pdf (in a new window) 'を絶対パスとして使用してください。" 'のテキスト部分は"ここをクリックしてPDFを開きます(新しいウィンドウで開く) " –

+0

@HeinzSchilling方法があるかどうか疑問に思っていました...流体タグを使用する方が簡単な方法があると思いました...私がすでに言ったように、私はtypo3-fluidに慣れています;-) – Kathara

答えて

1

私は同じことをしなければなりませんでした。私はサイトのURLを取得するためにカスタムViewHelperを書くことで解決しました。

なViewHelper:

class InternalViewHelper extends AbstractViewHelper 
{ 
    /** 
    * Renders a link to a specific path from the root path of TYPO3. 
    * 
    * @param string $path The path to an internal resource relative to the TYPO3 site URL. 
    * @return string The absolute URL to the given resource. 
    */ 
    public function render($path) 
    { 
     $siteUrl = GeneralUtility::getIndpEnv('TYPO3_SITE_URL'); 
     return htmlspecialchars($siteUrl . $path); 
    } 
} 

流体テンプレート:

{namespace ext = Vendor\MyExt\ViewHelpers} 

<f:link.external target="_blank" 
    uri="{ext:internal(path: 'uploads/tx_myext/myfile.pdf')}"> 
    Link 
</f:link.external> 
+0

あなたの素敵な解決に感謝します。私はシンプルなaタグを使ってやりたいと思っていることを信じていますが、これはしばらく時間がかかるかもしれません。 :) – Kathara

関連する問題