News-Types

    Die Bakehouse News-Erweiterung ist nicht nur auf einen News-Typ begrenzt. Es können weitere Types angelegt und dessen Felder angepasst werden.

    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 Home > coo_news öffnen
    • Bei coo_news das Context-Menü öffnen und New anklicken
    • Im Reiter General muss der Type "Folder" auswählt und beim Page Title der Name des neuen Types (in Großbuchstaben) angegeben werden.
    • Außerdem muss der Slug festgelegt werden. Hierfür 'Slug Generierung sperren' aktivieren und den Slug wie folgt angeben:
      /coo-news/mynewstype
    • Im gerade erstellten Ordner (Datenbehälter) kann jetzt der eigentliche News-Type angelegt werden. Hierfür das Plus-Symbol anklicken und dann unter coonews "Type" auswählen. Es öffnet sich eine neue Ansicht, auf welcher der Name, der auch im Front-End angezeigt wird, ein Code, der eindeutig sein muss, und ein Icon (bhe-font-folder-...) angegeben werden muss.

    Icons (bhe-font-folder-...):

    foldercheck
    check
    foldercircle
    circle
    foldercross
    cross
    foldereye
    eye
    folderfavoristes
    favorites
    foldergeo
    geo
    folderheart
    heart
    folderhome
    home
    folderline
    line
    foldermediacake
    mediacake
    foldersearch
    search
    foldersmiley
    smiley
    foldertext
    text
    foldertriangle
    triangle
    folderwireless
    wireless
    folderwork
    work
    foldermore
    more
    folderdata
    data
    foldercarte
    carte
    folderprofile
    profile
    foldershop
    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 (Ordner) 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 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:

     EinstellungDatentypen
    Beispiel
    textarea
    String, Translateable
     {"textarea":1}
    select
    String, Float, Int, Array
    {"select":{"items":{"key1":"value1","key2":"value2","key3":"value3"}}}
    mime-typesFile, File Liste{"mime-types": "image/svg+xml"}
    typeNews, News Liste{"type":2}
    iconselectString{"iconselect":1}
    checkboxString{"checkbox":"value"}
    countryselectString{"countryselect":1,"countries":"all","favourites":"","format":""} [*1]

    [*1]: Nähere Infos zu den Werten, die beim Countryselect möglich sind, findest Du in der Viewhelper-Doku.

    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}}

    Hinweis

    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.

    Typoscript
    [bh.extLoaded('coo_news') && coo_news.typeExists('blog')] @import 'fileadmin/templates/elements/el-blog-list/el-blog-list.typoscript' @import 'fileadmin/templates/elements/el-blog-detail/el-blog-detail.typoscript' [global]