Mit der Contao SVG Icon Picker Erweiterung können Backend-Felder erstellt werden, die eine Auswahl eines SVG-Icons erlauben.
Das gewählte SVG-Icon kann anschließend per Twig Function als Inline SVG im Template ausgegeben werden.
'icon' => [
'inputType' => 'svgIconPicker',
'eval' => [
'sourceDirectory' => 'files/icons',
'metadataDirectory' => 'files/icons/metadata',
'tl_class' => 'clr'
],
'sql' => 'blob NULL',
],
Dabei legst du fest, wo die SVGs liegen und ggf. wo Metadaten liegen.
Die Metadaten ermöglichen zusätzliche Informationen wie Labels oder Suchbegriffe („keywords“) für Icons, damit man im Backend einfacher suchen kann. Sie sind optional.
In das Verzeichnis, das bei sourceDirectory angegeben ist. Beispiel: files/icons. Die Dateien sollten direkt als einzelne SVG-Dateien vorliegen.
Es gibt eine Twig-Funktion svg_icon(icon) mit der das Icon in Templates gerendert werden kann.