Downloads um Klasse der Unterordner erweitern
Ich habe verschiedenen Dateien in einer bestimmten Ordnerstruktur und möchte die Unterordner quasi als Kategorie als Klasse vergeben, um diese später filtern zu können.
Dazu versuche ich das "downloads.html.twig" Template anzupassen, komme allerdings nicht weiter.
1. Sind die Unterordner irgendwo als Variable verfügbar? Bisher hab ich einfach den URL-Pfad mit Twig "split" aufgeteilt. Eventuell gibt es da ja eine bessere Lösung
2. Wie kann ich den Attributen eines einzelnen Downloads eine Klasse hinzufügen? Das müsste ja mit "attrs()" gehen, aber ich weiß nicht welchem Block/Component im Template ich das geben muss.
Gibt es generell eine Möglichkeit, in das Base-Template reinzuschauen, um zu sehen, was in den jeweiligen Blöcken drin ist?
Vielleicht hat hier ja jemand ein bisschen mehr Ahnung als ich :D
Danke schonmal im Vorraus
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Zitat von
zonky
Ich hab mich eher daran orientiert: https://docs.contao.org/dev/getting-started/dca/
tl_files.php:
PHP-Code:
<?php
use Contao\CoreBundle\DataContainer\PaletteManipulator;
$GLOBALS['TL_DCA']['tl_files']['fields']['filterCategories'] = [
'label' => &$GLOBALS['TL_LANG']['tl_files']['filterCategories'],
'inputType' => 'text',
'sql' => ['type' => 'string', 'default' => ''],
];
$GLOBALS['TL_DCA']['tl_files']['fields']['downloadCounter'] = [
'label' => &$GLOBALS['TL_LANG']['tl_files']['downloadCounter'],
'exclude' => true,
'inputType' => 'text',
'eval' => array('readonly'=>'readonly'),
'sql' => "varchar(32) NOT NULL default '0'"
];
PaletteManipulator::create()
->addField('filterCategories', 'meta', PaletteManipulator::POSITION_APPEND)
->addField('downloadCounter', 'meta', PaletteManipulator::POSITION_APPEND)
->applyToPalette('default', 'tl_files');
Im ce_downloads.html5 Template hab ich mir dann mal die TemplateVars ausgeben lassen und würde vermuten dass die Felder da auftauchen (Wird in der Doku ja auch einfach mit $this->location ausgegeben)
Aber dort fehlen die Felder einfach.
Anhang 26828