Zum Inhalt springen

RTE-Links rendern per PHP

Erstellt am 1. September 2016 · 4 Antworten · letzte Antwort am 6. September 2016

Tags: TYPO3 6.x, Frage

intensivstation ·

Ich suche sowas für TYPO3 6.2:

$parseHTML = t3lib_div::makeInstance('t3lib_parsehtml_proc'); 
$value = $parseHTML->TS_links_rte($value);

Ich habe keine Ahnung, wie man das unter TYPO3 6.2 löst.
Es soll also aus <link file:5637 _blank download \"Leitet Herunterladen der Datei ein\">hier<\/link>
ein normaler Link werden.

intensivstation ·

OK, vielen Dank, da war ich schon mal nah dran gewesen bei meinen Versuchen.
Die Lösung funktioniert leider nur teilweise.
Aus <link file:5637 _blank download \"Leitet Herunterladen der Datei ein\">hier<\/link>
wird damit <a href="http://www.soundso.de/?file:5637" class="download" title="Leitet Herunterladen der Datei ein">hier</a>.
Das alleine reicht leider noch nicht...
... was müsste man sonst noch machen?

intensivstation ·

Keine gute Lösung, aber was soll man machen?

preg_match_all("/\?file:(\d+)/", $note, $files);
$file_names = array();
if (is_array($files[1])) {
	foreach ($files[1] as $file_uid) {
		$res = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
				'uid, identifier',
				'sys_file',
				'uid = ' . $file_uid);
		$rows = $GLOBALS['TYPO3_DB']->sql_num_rows($res);
		if ($rows>0) {
			while($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)){
				$file_names[$row['uid']] = $row['identifier'];
			}
		}
		$GLOBALS['TYPO3_DB']->sql_free_result($res);
	}
	foreach ($files[1] as $file_key => $file_uid) {
		$note = str_replace($files[0][$file_key], 'fileadmin' . $file_names[$file_uid], $note);
	}
}