b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen...

30
/ Optimize your Optimize your backend! backend! Ein vereinfachtes Backend für Contao 4.4 Ein vereinfachtes Backend für Contao 4.4 Hella Schuster Contao Konferenz Duisburg, 11.10.2019 nachträglich ergänzte Präsentation

Transcript of b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen...

Page 1: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

Optimize yourOptimize yourbackend!backend!

Ein vereinfachtes Backend für Contao 4.4Ein vereinfachtes Backend für Contao 4.4Hella Schuster

Contao Konferenz Duisburg, 11.10.2019nachträglich ergänzte Präsentation

Page 2: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

Über michÜber michHella Schuster, MünchenHella Schuster, München

Frontend-Entwicklungseit 2012 mit ContaoContao Usergroup BayernContao Camp 19

Page 3: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

Was erwartet Dich?Was erwartet Dich?Zielgruppen/PersonasBenutzergruppen und -rechteAnpassungen TinyMCEAnpassungen DCAErweiterungenWorkflow

Page 4: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

Zielgruppen/PersonasZielgruppen/PersonasPersona 1: RedakteurPersona 2: ChefredakteurinPersona 3: Administrator

Page 5: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

Persona 1 - RedakteurPersona 1 - Redakteur

Persönliches: Single, 52Arbeitsbereich: KommunikationCharakter: intellektuell, technisch uninteressiert

“ Ich will nicht nachdenken müssen, sonderneinfach nur Inhalte einstellen. ”

Page 6: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

Persona 2 - ChefredakteurinPersona 2 - Chefredakteurin

Persönliches: Familienmensch, 38Arbeitsbereich: Kommunikation, LeitungCharakter: pragmatisch, technisch interessiert

“ Ich will grob verstehen, wie das Systemfunktioniert. Notfalls schreibe ich auch HTML. ”

Page 7: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

Persona 3 - AdminPersona 3 - Admin“ Ich darf alles, will aber auch von den

Verbesserungen profitieren. ”

Page 8: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

BenutzergruppenBenutzergruppenPagemountFilemountModuleCE-Elemente

Blogpost von Peter Adelmann/trilobit dazu.

Page 9: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

PagemountPagemountSeite auswählenBerechtigungen für Seiten und tl_pageBenutzergruppe für die Zugriffsrechte in der Rootpage

Page 10: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

FilemountFilemountDateiverzeichnis bzw. Unterverzeichnis wählenBerechtigungen für Dateioperationen

Page 11: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

ModuleModuleBackendmodule wählendazugehörige Felder wählen

Page 12: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

CE-ElementeCE-Elementece_accessContent-Elemente einzeln freigebenab 4.9 LTS im Core

Page 14: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

Den Editor vereinfachenDen Editor vereinfachen // Menubar deaktivieren menubar: false,

// Als Text einfuegen aktiviert paste_as_text: true,

//Toolbar vereinfachen toolbar: 'styleselect | link unlink | bold italic | bullist numlist | undo redo | fullscreen | code',

// eigenes CSS einfügen importcss_groups: [{title: '/themes/tinymce/tinymce.css'}], content_css: '/themes/tinymce/tinymce.css',

Page 15: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

Den Editor vereinfachenDen Editor vereinfachen

Die komplette Konfiguration ist hier verlinkt.

// Eigene Formate definieren style_formats: [ { title: 'Absatz', block: 'p' }, { title: 'Überschrift 2', block: 'h2' }, { title: 'Überschrift 3', block: 'h3' }, { title: 'Überschrift 4', block: 'h4' }, { title: 'Zitat', block: 'blockquote' }, { title: 'Highlight', inline: 'span', classes: 'highlight'} ], //Span-Elemente nur ohne Style-Attribut erlauben extended_valid_elements: 'span[!styles]',

Page 16: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

DCA-AnpassungDCA-AnpassungAnnahme: Unser User ist Mitglied in der Gruppe mit der ID 5 (isMemberOf(5).

Pfad: app/Resources/contao/dca/tl_content.php(Pfad anpassen ab 4.9 LTS!)

Quelle 1 | Quelle 2

if (TL_MODE == 'BE' && \BackendUser::getInstance()->isMemberOf(5)) { $GLOBALS['TL_DCA']['tl_content']['fields']['invisible']['default'] = true; $GLOBALS['TL_DCA']['tl_content']['fields']['invisible']['eval']['doNotCopy'] = true; }

Page 17: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

ErweiterungenErweiterungenjrgregory/m17-sticky-backend-footerterminal42/contao-ce-accessomosde/contao-om-backendbugbuster/contao-be_user_online-bundlecliffparnitzky/backend-custom-cssmarkocupic/be_email

Page 18: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

jrgregory/m17-sticky-backend-jrgregory/m17-sticky-backend-footerfooter

großer Usability-Gewinnfixiert die "Speichern"-Leiste unten im Browser

Page 19: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

terminal42/contao-ce-accessterminal42/contao-ce-accessBerechtigungen für einzelne Content-Elementeab 4.9 LTS im Core

Page 20: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

omosde/contao-om-backendomosde/contao-om-backendSchnellzugriffleisteElement-/ArtikelklassenIDs von Elementen

Page 21: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

bugbuster/contao-bugbuster/contao-be_user_online-bundlebe_user_online-bundle

nützlich bei mehreren RedakteurenSichtbarkeit nur in der Userliste gegeben

Page 22: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

cliffparnitzky/backend-custom-cliffparnitzky/backend-custom-csscss

Branding des Backends anpassenIndividuelle Backendanpassung für jeden UserIndividuelle Styles pro Domain möglich

Alternativ: Bearbeitung des Templates be_main.html5

Page 23: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

markocupic/be_emailmarkocupic/be_emailE-Mail aus dem Backend an andere Mitglieder oder BenutzerKann für rudimentären Workflow genutzt werden.

Achtung Bug: Für DB-Feld summary in tl_be_email muss NULL erlaubt sein.

Page 24: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

WorkflowWorkflow1. Online-Status Benutzer checken2. Bearbeiten3. Backend-Email zur Freigabe

AlternativAlternativnetzmacht/workflow

etwas anspruchsvoller in der Konfiguration

Page 25: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

composer.jsoncomposer.json"require": { "php": "^5.6 || ^7.0", "bugbuster/contao-be_user_online-bundle": "^1.0", "cliffparnitzky/backend-custom-css": "^1.0", "contao/calendar-bundle": "^4.4", "contao/conflicts": "*@dev", "contao/manager-bundle": "4.4.*", "contao/news-bundle": "^4.4", "jrgregory/m17-sticky-backend-footer": "3.0.0-beta", "markocupic/be_email": "^3.1", "omosde/contao-om-backend": "^1.5", "terminal42/contao-ce-access": "^2.0" },

Page 26: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

FRAGEN?FRAGEN?Aus dem Fragen- und Anmerkungsteil am Ende des Talks haben sichnoch einige Informationen ergeben, die ich hier nachtragen möchte.

Page 27: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

Noch mehr Erweiterungen 1:Noch mehr Erweiterungen 1:

Page 28: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

trk17-columns-bundle: Stellt Bootstrap-Grid auch optisch im Backend dar; intuitiveBedienung für Redakteure.contao-frontend-builder: Content-Elemente können ganz einfach per Drag & Drop in dieArtikel an beliebige Positionen gezogen werden.contao_elementsets: Mehrere Content-Elemente können zu Sets zusammengestelltwerden.contao-backupdb-bundle: Nützlich, wenn Redakteure vor größeren Änderungen ein Backupziehen möchten um notfalss zum alten Stand zurückkehren zukönnen.contao-easy_themes: Schnellzugriff auf Seitenlayout-Bereiche.

Page 29: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

Noch mehr Erweiterungen 2:Noch mehr Erweiterungen 2:

synccto: Arbeiten auf Staging-System und später Änderungen auf das Live-System synchronisieren.contao-short-urls: Verwaltung von Weiterleitungen im Backend, nicht nur zu kürzerenURLs.contao-backend-documentation: Bindet eine Markdown-Seite ein für die Dokumentation imBackend.contao-rocksolid-custom-elements: Erzeugung Individueller, verschachtelbarer Content-Elemente.dma_elementgenerator: Erstellen von eigenen Contentelement und Modulen.

Page 30: b a ckend! Op t i m i ze yo u r your Backend!.pdf · terminal42/contao-ce-access Berechtigungen für einzelne Content-Elemente ab 4.9 LTS im Core / omosde/contao-om-backend Schnellzugriffleiste

/

Noch mehr Erweiterungen 3:Noch mehr Erweiterungen 3:

imagecrop: Zuschneiden von Bildern im Backend. (Danke Kim!)contao-tinypng und contao-tiny-compress-images: Bilder automatisch im Uploader optimieren. (API-Key benötigt)