TYPO3 tutorial: absteigende Sortierung von Dateilinks
Über das Content-Element „Uploads“ lassen sich in TYPO3 Dateien zum Download bereitstellen. Die Sortierung, ob nach Dateititel, Dateigröße oder -typ, verläuft dabei jedoch immer nur aufsteigend (ascending).
Möchte man das Ganze mit der Funktionalität erweitern, die Sortierung der Downloads auch absteigend (descending) anzuzeigen, ist dies über ein paar wenige Konfigurationen möglich.
Und so wird's gemacht
Das Content-Element „Uploads“ verwendet den DataProcessor TYPO3\CMS\Frontend\DataProcessing\FilesProcessor. Darin befindet sich bereits eine Abfrage für die Richtung der Sortierung. Alles, was zu tun ist, ist, das Backend um ein Auswahlfeld zu erweitern, um den entsprechenden Wert dynamisch über TypoScript an die Klasse zu übergeben.
1. Feld zur Datenbank hinzufügen:
CREATE TABLE tt_content ( filelink_sorting_direction tinyint(1) unsigned DEFAULT '0' NOT NULL, );
2. TCA erweitern:
// Add new TCA field to the table "tt_content" \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tt_content', [ 'filelink_sorting_direction' => [ 'label' => 'Direction:', 'config' => [ 'type' => 'select', 'renderType' => 'selectSingle', 'items' => [ ['Ascending', 0], ['Descending', 1], ], 'size' => 1, 'maxitems' => 1, 'eval' => '', 'default' => 0 ] ], ]); // Add the field "filelink_sorting_direction" to the TCA palette "uploads" \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addFieldsToPalette('tt_content', 'uploads', 'filelink_sorting_direction', 'after:filelink_sorting');
3. Typoscript erweitern:
# set the sorting direction tt_content.uploads.dataProcessing.10.sorting.direction = descending tt_content.uploads.dataProcessing.10.sorting.direction.if.isTrue.field = filelink_sorting_direction