Concrete5: Einführung: Basisbezeichnungen
Allgemeine Begriffe
[Bearbeiten]Concrete5s Dokumentation und Kommentare beruhen auf einer internen Konvention, die Entwicklern und Endkunden gleichermaßen dienlich sein sollte, wenn sie diese beherrschen.
Auf den Punkt: Jede Seite hat editierbare Bereiche, die von Seitentypen definiert sind. Bereiche enthalten Instanzen von Blöcken (durch Blocktypen definiert), die alles vom bearbeitbaren HTML bis zur stark angepassten Umfrage enthalten können. Jede Seite hat eigene Zugriffsrechte und ein Theme ist damit verbunden. Themen beinhalten Vorlagedateien, welche die Präsentation eines vorgegebenen Seitentyps bestimmen.
Seiten
[Bearbeiten]Eine Seite ist in Concrete5 eine Seite wie auf jeder anderen Webseite: Sie füllt normalerweise den ganzen Browser und kann mit einer eindeutigen URL aufgerufen werden. Seiten können in Concrete5 eine schicke URL (ohne index.php) oder eine standard-CMS-y-URL haben. Zum Beispiel haben folgende URLs den gleichen Artikel als Ziel:
http://www.concretecms.com/services/widget-development/first-look-opensocial/
http://www.concretecms.com/index.php?cID=140
Jede Seite besitzt eine eindeutige cID ("c" steht für 'Collection' siehe unten) und ein Bündel an Metadaten in der Seitentabelle.
Es gibt einige Ausnahmen zu dieser Seite, eine Regel für Sammlungen. Einige Standardseiten wie 'login' oder 'register' werden 'Einzelseiten' genannt und befinden sich in einem eigenen Verzeichnis in der Concrete5-Installation. Diese werden dennoch durch das CMS dargestellt. Werfen Sie einen Blick auf den Anfang dieser Seite für eine ausführliche Erklärung der Ausnahmen.
Bereiche
[Bearbeiten]Bereiche sind Bestandteile bestimmter Seiten, die mit Hilfe des CMS bearbeitet werden können. Ohne Bereiche wäre eine Seite komplett statisch. Bereiche können Zugriffsberechtigungen enthalten, die bestimmen, welche Blöcke hinzugefügt werden dürfen oder wer sie betrachten darf.
Blöcke
[Bearbeiten]Blöcke sind Inhaltsstücke, die einzelnen Bereichen einer Seite zugewiesen werden. Ein Block stellt eine Instanz eines bestimmten Inhaltstyps, der auf der Seite dargestellt wird. Im Edit-Modus, können Blöcke durch Überfahren und Klicken mit der Maus, direkt auf der Seite die sie enthält, bearbeitet werden. Alle Blöcke haben gewisse Daten gemeinsam, wie die ID des Benutzers, der sie hinzugefügt hat, oder das Datum des Erstellens oder Modifizierens.
Blocktypen
[Bearbeiten]Ein Block ist eine Inhaltsinstanz oder Funktionalität nachdem er einer Seite hinzugefügt wurde. Der Blocktyp gibt an, wie sich Blöcke voneinander unterscheiden:
Blocktypen können folgende Dinge enthalten:
- HTML Inhalt
- Bildergalerie
- Seitennavigation
- Sitemap
- Umfrage oder Abstimmung
- u.v.m.
Das sind alles Blocktypen. Wird ein Block installiert, ist ein Administrator in der Lage, diesen Typen jedem Bereich einer Seite hinzuzufügen. Wird beispielsweise einer Seite eine Umfrage hinzugefügt, stellt diese selbst einen Blocktypen dar, und die aktuell hinzugefügte Umfrage auf der Seite, mit den spezifischen Fragen, Antworten und Ergebnissen, stellt den Block selbst dar.
Blöcke sind normalerweise eigenständig, und haben von anderen Gegenständen auf der gleichen Seite keine Ahnung. Jeder Typ eines Blocks hat seine eigene Präsentationsschicht, ein Formular, das beim Hinzufügen, und ein Formular, das beim Bearbeiten aufgerufen wird. Diese Formulare werden normalweise in Seitenpopups von Concretes Interface-Schicht dargestellt. Ein Tutorial für Entwickler, die eigene Blöcke erstellen möchten, findet sich bei den Kollegen aus der Schweiz concrete5.ch
Seitentypen
[Bearbeiten]Wie für Blocktypen, hat concrete5 auch ein Konzept "Seitentypen". Ein Seitentyp ist ein Template (eine Vorlage) und Konventionen erlauben es verschiedenen Seitentypen, unterschiedliche Bereiche einer Webseite hinzuzufügen. Seitentypen haben einen Namen und berücksichtigen eher funktionelle Anforderungen als Layout-Anforderungen. Hier eine Liste an Seitentypen, die möglicherweise in einer Firmenwebseite vorhanden sein könnte:
- Home - Ein Seitentyp der zur Hauptseite gehört
- Landing - Ein Seitenmodell, das zu einem der Hauptabschnitte der Webseite gehört
- Details - Eine detaillierte Produktbeschreibung in Form eines Seitentyps
- Press Release
- News Article
- Product
Seitenmodelle sind normalerweise dafür gedacht, an jeder beliebigen Stelle wiederverwendet werden zu können (Home ist hier eine Ausnahme). Einzelne, einmalig verwendete Seiten werden weiter unten unter "Einzelseiten" beschrieben.
Themen
[Bearbeiten]Themen sind die äußere Oberfläche einer concrete5 Webseite. Von Seitentypen und Einzelseiten getrennt, erlauben Themen ein unterschiedliches Aussehen der gleichen Seitentypen in verschiedenen Bereichen einer Webseite. Beispielsweise könnte ein Artikel eines Sportabschnitts ein komplett anderes Thema als der eines Finanzabschnitts verwenden.
Seiten- und Benutzereigenschaften
[Bearbeiten]Während alle Seiten und Benutzer Daten beinhalten, die mit diesen verknüpft sind, erlaubt Concrete Administratoren eigene Datenstücke zu erstellen und diese mit Seiten und Benutzerzugängen zu verknüpfen. Diese werden in Concrete als "Attribute" bezeichnet. Beispiele dafür:
- "Exclude From Nav?" (check box)
- "Meta Keywords" (text field)
- "Additional Description" (text box)
Beispiele für Benutzerattribute:
- "Geschlecht" (radio button w)
- "Land/Bundesland" (select menu)
Benutzer
[Bearbeiten]Benutzer sind Zugänge, die gewöhnlich eine concrete5-verfügbare Seite editieren. Im Kern enthält concrete5 eine Benutzeraufzeichnung, lediglich bestehend aus einer ID, einem eindeutigen Benutzernamen und einer Emailadresse. Erweiterte Benutzerattribute können im Dashboard hinzugefügt werden.
Gruppen
[Bearbeiten]Gruppen bieten eine einfache Möglichkeit, Benutzer in einer besonderen Art zu kombinieren. Gruppen werden vorzugsweise in concrete5s Zugriffsrechten verwendet: einer vorhandenen Gruppe von Benutzern kann die Erlaubnis erteilt werden, Seiten zu lesen, zu verändern, zu löschen und administrativen Zugang zu einer Seite, Bereiche oder eben individuellen Blöcken zu haben.
Entwickler Begriffe
[Bearbeiten]Für Entwickler sind folgende Dinge wissenswert:
Kollektionen/Zusammenfassungen
[Bearbeiten]In concrete Versionen, die vor concrete5 erschienen, wurden Kollektionen direkt in Seiten gepackt. Sie wurden so benannt, da Kollektionen Zusammenfassungen von Blöcken waren. Allerdings können Kollektionen in concrete5 ohne eine Aufnahme in einer Seitentabelle existieren und zudem Blöcke zusammen gruppieren, ohne einen präsentierenden Aspekt an sich, bzw. ein Vorkommen in der Sitemap zu haben. Darüberhinaus können Kollektionen programmatisch aufgerufen werden, was für Programmierer die die Stärke und Flexibilität der eingebauten Blöcke nutzen möchten, ohne sich darum kümmern zu müssen, wo die Seite liegt mit welchen Zugriffsrechten, etc.
Einzelseiten
[Bearbeiten]Einzelseiten sind Seitenaufzeichnungen, die kein Seitenmodell haben. Stattdessen werden sie direkt mit Dateien im Dateisystem verküpft. Das ist insofern nützlich, da einmal installierte Einzelseiten im Dashboard an folgender Stelle aufrufbar sind: www.ihreseite.de/seitenname.
Generell ist es besser, Einzelseiten zu benutzen, von denen man weiß, dass diese nur einmalig benötigt werden. Beispiele für Einzelseiten, die automatisch von systemintegrierten Dateien erstellt werden:
- Login
- Register
- Verschiedene Dashboard-Seiten
Einzelseiten benutzen Concretes Model-View-Controller, die vor allem dann dienlich sind, wenn Concrete als Anwendungsplattform genutzt werden soll.