Anzeige
Anzeige
UX & Design
Artikel merken

TYPO3 Neos: TypoScript 2, die Rechteverwaltung und Workspaces

Seit Ende Oktober gibt es die erste Alpha-Version von TYPO3 Neos zum Download. Grund genug, dem neuen Content Management System unter die Haube zu schauen. Wir geben Einblicke in die neue Architektur, TypoScript 2, die Rechteverwaltung, Workspaces und die neuen Editierfunktionen für Redakteure.

6 Min. Lesezeit
Anzeige
Anzeige

Als das Entwicklerteam auf der TYPO3-Konferenz im Oktober 2012 den TYPO3-CMS-Nachfolger Neos vorstellte, hatte dieser schon einen weiten Weg hinter sich. 2006 zunächst als TYPO3 5.0 angekündigt, hieß er zwischendurch Phoenix und lieferte quasi als Nebenprodukt das Framework TYPO3 Flow (ehemals FLOW3).

Die Architektur

Anzeige
Anzeige

Im Unterschied zum TYPO3 CMS ist Neos vollständig modular aufgebaut. Den Unterbau bildet das Framework TYPO3 Flow. Das eigentliche CMS besteht aus derzeit 14 Paketen, die verschiedene Teilfunktionen kapseln. Aber auch die Webseite ist modularisiert: In Neos ist sie auch nichts anderes als ein Flow-Paket, das sich nach Belieben installieren, deinstallieren oder auf andere Umgebungen übertragen lässt. Prinzipiell speichert Neos Pakete in drei verschiedenen Ordnern:

  1. Packages/Framework: Hier liegen die Pakete, die zum TYPO3 Flow-Framework gehören. Dies sind vor allem das Framework selbst und die Templating-Engine Fluid.
  2. Packages/Application: Dieses Verzeichnis beinhaltet anwendungsspezifische Pakete, vor allem das CMS selbst.
  3. Packages/Sites: Hier liegt die Website in Form eines Pakets. Dies beinhaltet etwa die Fluid-Templates, statische Dateien (wie Stylesheets, JavaScript-Dateien oder Bilder) und seitenspezifische Plugins.

Neos aus Sicht des Redakteurs

Das Backend von Neos präsentiert sich sehr aufgeräumt. Es ist in die drei Bereiche Content, Management und Administration unterteilt. Unter dem Menüpunkt Administration stehen derzeit die Benutzer- und Paket-Verwaltung zur Verfügung. Im Management-Bereich finden Nutzer ihre Einstellungen und eine Übersicht über ihre aktuellen Arbeitsbereiche (mehr zu den Arbeitsbereichen später). Im Content-Bereich hat der Benutzer schließlich Zugriff auf die eigentlichen Inhalte der Seite.

Anzeige
Anzeige

Neos modelliert Inhalte einer Website anders als aus TYPO3 bekannt: Die strikte Trennung von Seiten und Inhaltselementen ist nun aufgehoben. Eine Neos-Website besteht nur noch aus Knoten (nodes), die man in nahezu beliebigen Hierarchien anordnen kann. Ein solcher Knoten kann beispielsweise eine Seite sein, aber auch ein klassisches Text-Inhalts- oder Strukturelement, wie etwa ein zweispaltiger Container. Somit unterstützt Neos von Haus aus ein Content-Modell, das sich beliebig tief verschachteln lässt. Über die Inspect-Schaltfläche unten links kann man sich die Inhaltsstruktur der aktuellen Seite jederzeit anzeigen lassen.

Anzeige
Anzeige

Dank der Integration moderner JavaScript-basierter Editoren wie Hallo.js und Aloha-Editor bietet Neos ein komfortables In-Place-Editing. Das heißt, dass der Redakteur ein Content-Element per Klick darauf direkt auf der Website editieren kann. Das Speichern von Änderungen erfolgt implizit beim Verlassen des Editors – alle vorgenommenen Änderungen müssen später aber noch einmal explizit veröffentlicht werden (dazu später mehr).

Neue Knoten kann man ohne Umwege über zusätzliche Menüs direkt an Ort und Stelle einfügen. Neos unterscheidet hier standardmäßig zwischen klassischen Inhaltselementen (wie Überschriften, Texten und Bildern) sowie Strukturelementen (etwa Menüs oder mehrspaltige Elemente). Außerdem lassen sich in der rechten Spalte die Metadaten eines ausgewählten Inhaltselements bearbeiten. Beim Einfügen von Bildelementen kann man hier zum Beispiel ein Bild hochladen und praktischerweise auch gleich zurecht schneiden.

Anzeige
Anzeige
Über die Inspect-Schaltfläche kann man sich jederzeit die Inhaltsstruktur einer Seite darstellen lassen.
Über die Inspect-Schaltfläche kann man sich jederzeit die Inhaltsstruktur einer Seite darstellen lassen.

Die zur Verfügung stehenden Inhaltselemente lassen sich später über TypoScript um beliebig viele Inhaltstypen erweitern. Dabei kann es sich entweder um komplett benutzerdefinierte Plugins mit eigenem MVC-Stack handeln oder auch um einfache Fluid-Templates, die sich mit benutzerdefinierten Variablen füllen lassen. Der optionale Wireframe-Modus ermöglicht es zudem nach wie vor, Seiteninhalte auch losgelöst von ihrer grafischen Präsentation zu bearbeiten. Das kann zum Beispiel dann sinnvoll sein, wenn noch kein Layout für ein Website-Projekt vorhanden ist, man aber dennoch schon die Struktur und Inhalte prototypen möchte.

TypoScript reloaded

Die Konfigurationssprache TypoScript war bereits ein Alleinstellungsmerkmal des TYPO3 CMS. Neos greift dieses Erfolgsrezept auf. Es erweitert die Sprache um die prototypenbasierte Objektorientierung (ein weiterer bekannter Vertreter dieser Art Programmiersprachen ist JavaScript) und eine an jQuery angelehnte Abfragesprache für Inhaltsobjekte: Die Evaluated Expression Language (Eel).

Anders als aus TYPO3 gewohnt, wird TypoScript nun zwingend in Dateien und nicht mehr in der Datenbank verwaltet. Seitenspezifisches TypoScript sollte dabei stets im „Resources/Private/TypoScripts“-Verzeichnis des Seiten-Pakets liegen (bei der Demo-Seite liegt das Root-Template im Verzeichnis „Resources/Private/TypoScripts/Library/Root.ts2“). TypoScript-Templates, die ähnlich den bekannten Extension-Templates nur für bestimmte Knoten gelten, sind ebenfalls möglich. Hierzu muss der Dateiname des Templates nur dem Pfad zum Knoten entsprechen: Ein Extension-Template für den Knoten „homepage/home“ muss somit in der Datei „Nodes/Homepage/Home.ts2“ gespeichert sein.

Anzeige
Anzeige

Die Speicherung in Dateien hat mehrere Vorteile: Einerseits lassen sich diese Dateien über externe Editoren bearbeiten. Andererseits kann man die TypoScript-Dateien über gängige Versionskontrollsysteme verwalten, etwa mit Git oder SVN. Über spezielle Eel-Ausdrücke lassen sich in TypoScript wiederum Abfragen auf beliebige Objekte ausführen. Mit dem Ausdruck „${q(node).children([title=“Titel“])}“ kann man beispielsweise alle Unter-Knoten des Knotens „node“ mit einem bestimmten Titel ermitteln.

Im Wireframe-Modus kann man Seiteninhalte wie gewohnt losgelöst vom Design bearbeiten.
Im Wireframe-Modus kann man Seiteninhalte wie gewohnt losgelöst vom Design bearbeiten.

Rechteverwaltung und Workspaces

Das Arbeiten mit verschiedenen Arbeitsbereichen (Workspaces) ist nun integraler Bestandteil des CMS. Jeder Benutzer verfügt hierbei grundsätzlich über einen eigenen Arbeitsbereich. Alle Änderungen, die ein Redakteur im Backend vornimmt, sind zunächst nur in seinem Arbeitsbereich zu sehen. Im Frontend sind sie erst dann sichtbar, wenn sie der Redakteur explizit veröffentlicht. Mit dem Button „Publish Page“ in der oberen rechten Ecke des Content-Moduls ist das einfach und schnell geschehen. Eine Übersicht über alle ausstehenden Änderungen findet man im Management-Modul im Abschnitt „Workspaces“. Änderungen lassen sich hier auch über die Option „Discard Changes“ verwerfen.

Im Workspaces-Modul kann jeder Nutzer seine Änderungen sehen.
Im Workspaces-Modul kann jeder Nutzer seine Änderungen sehen.

In der Version 1.0-alpha1 sind alle Benutzer, die man über die Benutzerverwaltung im Bereich „Administration“ → „User Management“ anlegen kann, stets Administrator-Benutzer. Grundsätzlich unterstützt Neos bereits beliebige Benutzer-Rollen. Man kann diese aktuell aber nur über den integrierten Kommandozeilen-Client erstellen und zuweisen. Ein Redakteur lässt sich also beispielsweise mit folgendem Kommandozeilen-Befehl anlegen:

Anzeige
Anzeige
SHELL
$ ./flow user:create --roles Editor mmustermann geheim Max Mustermann

Listing 1

In der aktuellen Version sind die nutzbaren Arbeitsbereiche auf die jeweiligen Benutzer-Arbeitsbereiche beschränkt. Komplexe Review-Abläufe sind aufgrund dieser Beschränkung der Bereiche bisher nicht möglich.

Ausblick

Selbstverständlich kann TYPO3 Neos in der ersten Alpha-Version vom Funktionsumfang her gesehen noch nicht mit dem großen Bruder TYPO3 CMS mithalten. Aber für die nächsten Versionen sind bereits zahlreiche interessante und nützliche Features geplant. So soll dann beispielsweise das Verwaltungs-Tool TYPO3.Expose enthalten sein. Dieses Modul verwendet den seit FLOW 1.1 enthaltenen Formulargenerator, um Bearbeitungsformulare für beliebige Domain-Objekte zu generieren. Es lässt sich daher ähnlich wie das aus dem TYPO3 CMS bekannte Listen-Modul nutzten.

Außerdem haben die Enwtickler versprochen, dass man Inhalte später zwischen verschiedenen Neos-Installationen synchronisieren können soll. Auf diese Weise können in Hochlast-Szenarien Seiten über mehrere Neos-Instanzen ausgeliefert werden. Schließlich soll eine der nächsten Versionen Mehrsprachigkeit komplett unterstützen und dabei sowohl eine vollständig lokalisierte Benutzerschnittstelle als auch eine Verwaltung beliebiger Sprachen enthalten.

Anzeige
Anzeige

Fazit

Obwohl sich Neos noch in der Entwicklungsphase befindet und sich daher derzeit ausschließlich zu Testzwecken einsetzen lässt, macht die erste Alpha-Version bereits einen viel versprechenden Eindruck. Das flexible Content-Modell ist ein deutlicher Vorteil gegenüber des starren Modells früherer TYPO3-Versionen. Die Konfigurationssprache TypoScript 2 greift die Philosophie des klassischen TypoScripts auf, nach der alles konfigurierbar ist. Sie erweitert den Sprachumfang dabei allerdings um sinnvolle Konzepte wie beispielsweise die prototypenbasierte Objektorientierung.

Die erste Alpha-Version von TYPO3 Neos hinterlässt einen durchweg positiven Eindruck und macht Lust auf mehr. Die In-Place-Bearbeitung von Inhalten im Backend ist ein Quantensprung gegenüber der zuweilen umständlichen TYPO3-Oberfläche. Die bereits vorhandenen Backend-Administrationsoberflächen sind gut durchdacht und konsequent umgesetzt. Mittels TypoScript 2 und dank des sauber implementierten, objektorientierten Flow-Unterbaus kann man nahezu jeden Aspekt des Systems an die eigenen Bedürfnisse anpassen oder erweitern.

Mehr zu diesem Thema
Fast fertig!

Bitte klicke auf den Link in der Bestätigungsmail, um deine Anmeldung abzuschließen.

Du willst noch weitere Infos zum Newsletter? Jetzt mehr erfahren

Anzeige
Anzeige
10 Kommentare
Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Heinz Inge

Typoscript ein Erfolgsmodell? Der Mist ist „Pain in the ASS“.

Es ist zwar schön das man sich am Node Konzept von Drupal Orientiert aber solange man die ganzen anderen Macken nicht anfässt wird t3 niemals über Deutschland hinaus genutzt werden.

Antworten
Holger

@Heinz: Welche Macken meinst du konkret?

Antworten
virtualmachine

Das Node Konzept ist nur konsequent und TYPOScript ist was zum lernen.

Was sind denn „die ganzen anderen Macken“ ? Ich finde deinen Kommentar etwas unqualifiziert..

Antworten
freaky_sevi

Ich frage mich, wieso man das Rad immer neu erfinden will. Wer braucht TypoScript wirklich und wieso das Ganze nicht mit zB PHP abbilden, sondern auf „etwas eigene“ setzen?

Antworten
Steffen Brand

Hinter TypoScript steckt doch nichts anderes als PHP.
Im Endeffekt ist es doch nur eine komfortable Art PHP Arrays zu befüllen.

Klar schreckt es im ersten Moment ab, etwas „neues“ lernen zu müssen, aber ich für meinen Teil finde, dass sich das lohnt.

Als „pain in the ass“ habe ich es nie empfunden und ich habe den Eindruck, dass die TS2 Syntax sich noch mehr an gelernten Sprachen orientiert. Wenn ich das genannte Beispiel heranziehe, wird sich sicher jeder, der schon einmal mit jQuery gearbeitet hat, auch in TS2 zurechtfinden.

Antworten
Foo Bar

Warum macht das T3N eigentlich immer Werbung für Neos?
Sollte Journalismus nicht den Anspruch haben, Neutral zu sein?
Oder ist dieses hier plump eine ungekennzeichnete PR-Kampagne?

NEOS ist ein CMS im Alpha Stadium, dass bis jetzt kaum was kann
und von so gut wie keinem (aus der Architekten selbst) eingesetzt
wird! Es gibt kein Ziel und es gibt kein soziales OS Fundament.

Es gibt so viele OS CMS die es mehr verdient hätten, als dieses.

TYPO3 ist ein sehr erfolgreiches Produkt mit positiven Wurzeln.
NEOS ist nur dem Marketing nach TYPO3, Realität ist das nicht.
NEOS ist ein für teuer Geld gesponsertes Produkt, mit nazistischer,
gar zwanghafter Selbstdarstellung der/des Artisten – die bis Heute
viel mehr Versprechen als Sie zu leisten je Vermögen. Sie geben sich
als wären Sie, wie TYPO3. Sind sie aber nicht! Es sind kommerziell
Entwickler, die unglaublich lange (+6 Jahre) für eine Alpha gebraucht
haben, die ein paar Konzepte von JAVA/Rails & co. jetzt auf PHP drauf
zwängen. Warum? Wofür? Für wen? PHP ist dafür nicht gedacht. Und
aus User-Sicht, bis jetzt ein sehr unrundes Geek Produkt. Mag sein,
dass ein PHP-Scripter das Framework gut findet, aber das CMS kann
wohl keiner als Gelungen bezeichnen! Ohne „Aloha“, wäre das
einfach nur ein sehr sehr teurer (+2 mio. €) spass für Selbstverliebte.

@T3N: Schreibt doch mal „genauso viel“ über die, die es verdienen!

http://www.concrete5.org
http://www.silverstripe.org
http://modx.com
– …

Habe ähnliche Framework Paradigmen, aber auch Fuktionen die
den Begriff CMS überhaubt rechtfertigen. Genau das spreche ich
NEOS eindeutig ab und genau dieser Fakt macht solche Artikel zu
plumper PR unter „Nutznießer-Freunden“ und wirft … Schatten.

Antworten
Oink

Anfangs war Typoscript wirklich echt schwer durch zu blicken. Mittlerweile ist es kein Problem mehr. Vor allem kann ich mit Typoscript relativ Flott mir neue Content-Elemente zusammen bauen. Ich weiß jetzt nicht wie sicher Typoscript ist, aber da man auch Mysql-Abfragen ohne weiteres machen kann und auch Caching ohne Probleme steuern lässt, ziehe ich Typoscript aus Sicherheits- und teilweise Zeitgründen bei kleineren Sachen immer dem PHP vor. Einzig das Performanceproblem was dadurch entsteht ist störend, solang nicht gecached wird. Da ist PHP aufjedenfall schneller…

Übrigens würde ich mir Lightboxes zur Klickvergrößerung der Bilder in Artikeln wünschen :D

Antworten
cephei

@Foo Bar
„Warum macht das T3N eigentlich immer Werbung für Neos?“
T3N = TYPO3 News
Auch wenn du mit einigen Aussagen ziemlich ins schwarze triffst, kann man t3n nicht verübeln, das über TYPO3 berichtet wird. Steht doch schon im Namen.

Antworten
awu_qbus

@FooBar
Ich habe mir über die Feiertage mal die Zeit genommen, mir Flow und T3 Neos genauer anzuschauen. Bislang habe ich T3 als CMS immer abgelehnt. Das Konzept den neuen Typo3 überzeugt mich aber!

Natürlich ist es ein komplett neues System und nutzt den Markennamen das alten… Ist das schlecht? Was ist schlecht daran, wenn ein OS-Projekt gesponsort wird?

Silverstripe war ja mal vor 2 Jahren oder so ein großer Hype. Den konnte ich auch nicht nachvollziehen. Concret5 ist interessant. Aber das Konzept von Flow als zugrunde liegendes Framework überzeugt mich mehr, als das Zend Framework. Wozu man TypoScript benötigt erschließt sich mir aber nach wie vor nicht vollständig.

Antworten

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.

Bitte schalte deinen Adblocker für t3n.de aus!
Hallo und herzlich willkommen bei t3n!

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team von mehr als 75 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Schon jetzt und im Namen der gesamten t3n-Crew: vielen Dank für deine Unterstützung! 🙌

Deine t3n-Crew

Anleitung zur Deaktivierung
Artikel merken

Bitte melde dich an, um diesen Artikel in deiner persönlichen Merkliste auf t3n zu speichern.

Jetzt registrieren und merken

Du hast schon einen t3n-Account? Hier anmelden

oder
Auf Mastodon teilen

Gib die URL deiner Mastodon-Instanz ein, um den Artikel zu teilen.

Anzeige
Anzeige