Certified TYPO3 Integrator

Aus Wikizone
Wechseln zu: Navigation, Suche

Infos aus dem Kurs Certified Typo3 Integrator

17.3. und 18.3.2011 Kurs bezieht sich auf Version 4.2.x

Installation

Install Tool

  • disabled
  • Sicherheit (misc Verzeichnis mit superadmin, entwicklertools) besser löschen
  • Verzeichnisse
    • fileadmin -> für den Benutzer
    • uploads -> sollte immer automatisch von typo3 bedient werden nie manuell
      • Gefahren: Referenz Index zerstört, automatische umbenennungen
    • Kern eins vor
    • typo3conf
      • extTables.php -> metadaten für formulardarstellung im be
      • extension vezeichnis (ext)

Install Tool

Evtl. im Livebetrieb weg wg. Sicherheit

"Edit files in typo3conf/"

Möglichkeit die localconf.php zu bearbeiten. Sinnvoll z.B um nicht funktionierende Extensions wieder auszubauen. Cache löschen nicht vergessen.

Fragen: - wo macht man was? - dev ipmask - wie kommt man an externe Files (fopen, curl)

Basic Configuration

Encryption key: wichtig z.B. für salted Passwords. Nicht verändert

Auch wichtig gleich alles auf utf-8 umstellen (besser Datenbank kopieren.

  • Datenbank, Tabellen
  • Speicherung der Daten
  • Datenbankverbindung

Database Analyser

- Compare - Admin User

Version z.B. 4.2.11 MajorVersion . Compatibility Version . PatchVersion

All Configuration

Extensions

Systemextensions -> auf die Version angepasst => nicht verändern sind in typo3 sysext

Sie sind teil des Systems. Kann man praktischerweise abschalten (Performance)

  • Systemextension "cms"
  • Globale Extensions

Diese sind Teil des Cores

für Globale Extensions kann man da sie Teil des Kerns sind für mehrere Installationen nehmen.

Sie können aber trotzdem lokal installiert werden (weil das ja in localconf.php passiert)

Bei überschneidungen gilt Reihenfolge System dann Global dann Lokal (lokal überschreibt z.B. Global)

Sicherheit

milworm für Übersicht

Backend

Caching

  • Page Content Cache -> Datenbank
  • Configuration Cache -> Cache Dateien in localconf.php

Struktur

  • 3 Teilung, von links nach rechts arbeiten (als Tipp)
  • Hauptmodule für Inhalte (List,Page)
  • Seitenbaum
    • WEltkugel -> nur Admin, bestimmte Datensätze, uid=0,
    • alles ist Tabelle und wird auf den Datenbaum projiziert (uid und pid)
    • Wo kann man Seiteneigenschaften einstellen (Pagemodul, Seiteneigenschaften Button, Listmodul, Kontextmenü)

Module

  • Redakteur Bereich
  • Admin Bereich

Extension Manager

Reviewed Extensions, Shy Extensions, Obsolete, Was passiert? Warum sehe ich meine Extension nicht, TER

Deinstallieren nützt nichts bei Hacken -> delete, wo geht das? Wo melde ich (Security-) Bugs (Team)

Name von Extensions

Grundsätzliches zu Tabellen

Namen, pid, uid, sorting, hidden, deleted

wiederkehrende Namen (title etc.)

Templates

Differenzieren zw. HTML und TS

TypoScript Template

Root oder Extension

Template Tools

Info/Modify, Constant Editor, Object Browser, Template Analyser

Template ist ein Datensatz

TypoScript

Assoziatives Array, keine Programmiersprache eher Konfiguration, weniger Objekt als Strukturierte Information (hierarchisch)

Objektpfad, Wert

liegt am Ende alles im TSFE (komplettes Frontend)

(weitere Objekte TCA, ConfVars, Globals TYPO3DB...)

  • Unbekannte Teile werden ignoriert
  • Durch TS wird irgendwann PHP ausgeführt.
  • Der zuletzt definierte Wert gilt

Gglobalstsfe->pSetup... Funktion

  • objektpfad - operator wert
page=PAGE

Operatoren

 = Zuweisen
:= modifizieren
> löschen
< kopieren
=<Referenz 

Kommentare

#, /, //, /* */

Müssen immer in der ersten Zeile stehen. Wenn danach wird auch das davor ignoriert

Syntax

  • Verkürzen durch geschweifte Klammer
  • runde Klammer für mehrere Zeilen (dann ohne = und nach öffnen der neuen Klammer neue Zeile und Endklammer in eigene Zeile)

Top Level Objekte (TLO) und CONTENT Objekten (CO)

= TLO

Findet man unter Setup in der TSREF Braucht man eins bevor überhaupt was geht z.B.

CONFIG

gibt es allein, gilt dann für alles oder als sub zu pageObjekte, gilt dann nur für die betreffende Seite.

PAGE (muß verwendet werden)

PAGE Objekt

page=PAGE

ist eigentlich schon eine Seite aber wegen einem Bug muß zumindest eine weitere Zeile mit

page.irgendwas = irgendwas 

kommen

Unterschied HTML / TEXT

HTML: darauf value und darauf stdWrap
TEXT: value und parallel dazu wrap
TEXT Objekt kann auch HTML besser TEXT verwenden durch paralleles verwendne kann man den Inhalt besser wieder verwenden. Historisch ist TEXT das neuere.

IMAGE, IMG_RESOURCE