News-Types
News-Types anlegen
Um einen neuen News-Type anzulegen, werden folgende Schritte im typo3 TYPO3-Back-End tdurchgeführt:
- In der linken Navigation unter Web auf List klicken.
- Im Strukturbaum
Cookis Bakehouse > Home > coo_news
ausklappen. - Per docucrosshair Drag & Drop den Typ folderempty Folder entsprechend unter coo_news einfügen und in Großbuchstaben benennen.
Tipp: Für die Benennung empfiehlt sich außerdem Mehrzahl aufgrund der Ausgabe des Namen im Interface usw.
- Rechtsklick auf den soeben erstellten folderempty Folder und mit edit Edit die Seiten-Einstellungen öffnen.
- Im Reiter General sollte schon der Type folderempty Folder ausgewählt und beim Page Title der Name des neuen Types (in Großbuchstaben) eingetragen sein.
- Außerdem muss der Slug unter "URL Segment" festgelegt werden.
Hierfür die linkbox manuelle Überschreibung und Checkbox "Slug Generierung sperren" aktivieren und mit dem Prefix /coo-news/ und dem Page Title (in Kleinbuchstaben) angeben, also z. B. /coo-news/jobs - save Speichern nicht vergessen.
- Im gerade erstellten Folder (Datenbehälter) kann jetzt der eigentliche News-Type angelegt werden.
Hierfür plus Create new record anklicken und dann unter typo3 Coonews "Type" auswählen.
Es öffnet sich eine neue Ansicht, auf welcher der Name (u.a. im Interface verwendet, daher auch hier wieder Mehrzahl), ein eindeutiger Code (in Kleinbuchstaben) und ein Icon (siehe folgende Tabelle) angegeben werden müssen. - save Speichern nicht vergessen.
News-Type Folder Icons
bhe-font-folder-...
| check | circle | cross | eye | ||||
| favorites | geo | heart | home | ||||
| line | mediacake | search | smiley | ||||
| text | triangle | wireless | work | ||||
| more | data | carte | profile | ||||
| shop |
News-Felder anlegen
Um ein neues Feld bei einem News-Type anzulegen muss im typo3 TYPO3-Back-End auf List im Seitenbaum der jeweilige News-Type-Container (Folder) angeklickt werden.
Unter Type öffnet sich durch das Anklicken des edit Stift-Symbols eine Ansicht, auf welcher unter Field Config der plus Create new Button geklickt werden muss.
Folgende Eigenschaften eines Feldes können gesetzt werden:
Name: Angezeigter Name über dem Input-Feld im News-Fenster
Property: Schlüssel, über welchen das Feld im Fluid-Objekt der News gespeichert wird (Achtung - darf sich nicht mit bestehenden Feldern des News-Objekts überschneiden)
Field Type: Datentyp des Feldes
Required: Wenn angekreuzt, muss das Feld im Formular ausgefüllt sein
Default Value: Standard-Wert
Description: Beschreibung, welche als Tooltip beim Name angezeigt wird
Config JSON: Konfigurationen für spezielle Felder
Config JSON
In diesem Feld können spezielle Konfigurationen für Felder festgelegt werden. Folgende Einstellungen sind möglich:
| Feld-Typ [*1] | Daten-Typen | Beispiel |
| textarea | String, Translateable | {"textarea":1} |
| checkbox | String | {"checkbox":"value"} |
| select | String, Float, Int, Array | {"select":{"items":{"key1":"value1","key2":"value2","key3":"value3"}}} |
| countryselect [*2] | String | {"countryselect":1,"countries":"all","favourites":"de,en,it","format":"isoCodeA2"} |
| iconselect | String | {"iconselect":1} |
| Feld-Einstellung | Daten-Typen | Beispiel |
| mime-types | File, File Liste | {"mime-types": "image/svg+xml"} |
| type | News, News Liste | {"type":2} |
| readonly [*3] | String, Array, JSON | {"readonly":1} |
Hinweise zu Configs
[*1]: Es darf nur jeweils ein Feld-Typ pro News-Feld definiert werden. Zusätzlich können entsprechend des Daten-Typs weitere Feld-Einstellungen definiert werden.
[*2]: Nähere Infos zu den Werten, die für countryselect möglich sind, können in der Viewhelper-Doku zu bh:form.countrySelect nachgeschlagen werden.
[*3]: readonly dient für Datenfelder, die über API-Extensions modifiziert werden und daher für Redakteur:innen nicht bearbeitbar sein dürfen. Die "Required" Einstellung hat dabei keine Auswirkung mehr, sodass die Validierung über die Extension erfolgen muss.
Formular erweitern
Pro News-Type kann zusätzlich ein Textfeld und eine Linkliste angeboten werden.
Dazu gibt es im Back-End beim jeweiligen News-Type ein Config Feld (Type Configurations), bei dem man im JSON Format das zusätzliche Textfeld und/oder die Linkliste aktivieren kann.
{"form":{"enableText":true,"enableLinks":true}}
Dynamische Felder
Sind die verfügbaren Datentypen und Konfigurationen im Config JSON nicht ausreichend, kann auf dynamische Felder zurückgegriffen werden.
Auf News-Type im TypoScript prüfen
Mit der typeExists-Funktion kann im TypoScript auf angelegte News-Types geprüft werden. Hierfür wird der Code des News-Types verwendet.