Für ein Projekt war es wichtig, dass die Bilder aus dem fileadmin referenziert werden und nicht kopiert werden. Ich schätze den TYPO3-Kopiermechanismus, da er sinnvoll ist, da Redakteure „aus Versehen“ Dateien löschen können, aber manchmal kann es auch sehr lästig sein. Gerade wenn man den fileadmin-Ordner versioniert mit SVN zum Beispiel, kann es so einfach sein: Datei austauschen, Checkout einspielen, fertig.
Es gibt eine Extension im TER – em_references. Leider ist die schon alt und die nutzt XCLASSES, um das Rendering von TCAFORMS im Backend zu ändern. XCLASS heißt, dass der Code zu einem Zeitpunkt rauskopiert und angepasst wurde. Das heißt, das alle Änderungen, die seitdem im Core an der Stelle stattgefunden haben, dort nicht zu finden sind. Daher fand ich die Variante nicht gut.
Man kann aber tatsächlich auch ohne Extension auskommen. Man braucht eine kleine eigene Extension, die im TCA den Uploads-Pfad anpasst. Dazu schreibt man in ext_tables.php der Extension folgendes:
t3lib_div::loadTCA('tt_content'); $TCA['tt_content']['columns']['image']['config']['uploadfolder'] = ''; // das ist optional t3lib_div::loadTCA('fe_users'); $TCA['fe_users']['columns']['image']['config']['uploadfolder'] = '';
Dann muss man noch den Pfad über TypoScript anpassen, dazu brauch man folgende Zeile im TypoScript Template Setup:
tt_content.image.20.imgPath =
Der Nachteil dieser Methode gegenüber einer Extension ist, dass es nicht abwärts-kompatibel ist. d.h. hat man einmal diesen Weg gewählt, kann man nur dann wieder zurück, wenn man alle Bilder nach dem ändern dieses Pfades anfassen und neu zuweisen.
Für alle, die wie ich lange gesucht haben:
- Bilder nicht in uploads-Ordner kopieren
- uploads-Ordner für Bilder aus TYPO3 anpassen
- do not copy images in upload folder (without extension)
Wenn die Datei referenziert werden soll, kann man auch anstatt den Uploadfolder zu überschreiben den internal_type „richtig“ setzen:
$TCA[‚tt_content‘][‚columns‘][‚image‘][‚config‘][‚internal_type‘] => ‚file_reference‘,
Hätte ich das vorher irgendwo gefunden…
Mensch, das muss ich gleich mal ausprobieren, dann wäre TYPO3 fitzumachen für die Retinajs Methode http://retinajs.com/
@jank internal_type zu setzen erfült zwar denselben zweck, allerdings verwendet die thumbnail-vorschau im backend trotzdem den uploadfolder, dh der muss dann zusätzlich gesetzt werden, damits im Backend (Seite) keine roten Kästchen gibt, die fälschlich sagen, dass es das bild nicht gibt.
ob es einen Vorteil hat file_reference zusätzlich zu setzen kann ich aber nicht sagen