Goonline-CMS / Support eingestellt

Was ist das?

GoonlineCMS ist eine Anwendung die aus einem Projekt im Rahmen der Informatik AG meiner damaligen Schule entstand. Es ist vorallem im Bereich der Auswertung von Textdateien interessant, wird derzeit aber nicht aktiv weiterentwickelt.

Lizenz und Download

Diese Software ist unter der GPL veröffentlicht!!!

Copyright (c) 2003 Kay Strobach.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included in the section entitled "GNU
Free Documentation License".



Die GPL ist hier in enlisch verfügbar eine nicht autorisierte deutsche Übersetzung finden.

Wichtiger Hinweis:

GoOnlineCMS wird von mir zur Zeit nur noch sporadisch gepflegt, deswegen finden Sie hier nur das letzte stabile Release.

Klicken Sie hier um den Download von GoOnlineCMS zu starten

Dokumentation

                                  Dokumentation für GoOnlineCMS

Seite 1 von 8 - Inhaltsverzeichnis:
GoOnlineCMS von Kay Strobach   -   http://kay-s.host.sk

                 Dokumentation für GoOnlineCMS
                         Kay Strobach




Inhaltsverzeichnis:


INHALTSVERZEICHNIS:                                          1


EINFüHRUNG / VORWORT                                         2

PHILOSOPHIE VON GOONLINECMS                                  2

ERSTELLEN VON STATISCHEN WEBSEITEN FüR GOONLINECMS           3

ERSTELLEN EINFACHER INHALTE FüR GOONLINECMS                  3
1.NORMALES HTML-DOKUMENT                                     3
2.GOONLINECMS DOKUMENT                                       3
3.ERKLäRUNG                                                  3

ERSTELLEN DYNAMISCHER INHALTE FüR GOONLINECMS                4


GENERIERUNG DES NAVIGATIONSBAUMES                            5

DATEIEIGENSCHAFTEN                                           5
BEISPIEL EINER BAUMSTRUKTUR                                  5

PROBLEME UND MöGLICHE FEHLERQUELLEN                          7


ZUR ZEIT VERFüGBARE PLUGINS:                                 8
















Einführung / Vorwort
GoOnlineCMS ist eine neue Form des webbasierten Content
Managements. Es bietet die nötige Funktionalität, um dynamische
Inhalt mit relativ geringen Aufwand einzubinden.
Dabei ist vorallem die PHP Unterstützung in den Inhaltsseiten
hervorzuheben. Das bedeutet, dass jeder Redakteur beliebige
dynamische Inhalte einbinden kann. Der nun folgende Teil diese
Dokumentation soll vermitteln, wie man statische und dynamische
Inhalte mit GoOnlineCMS erstellt und verwaltet.


Sämtliche in dieser Dokumentation gemachten Angaben zu
GoOnlineCMS basieren auf der Standardkonfiguration des
GoOnlineCMS. Im speziellen Falle können einige Werte von den
hier angegebenen abweichen.
Bei Problemen sollte man den zuständigen Administrator zu Rate
ziehen. Eventuelle Fehlerquellen sind im Abschnitt Fehler und
Mögliche Ursachen beschrieben.

Philosophie von GoOnlineCMS
Der Anspruch von GoOnlineCMS ist möglichst effektiv eine
Webseite online zustellen.
Dabei kommt nicht dem CMS die Verwaltung der Nutzerrechte zu,
sondern dem Server auf dem es seinen Dienst verrichtet. Das
bedeutet, dass der Administrator seinen Bearbeitern nur FTP-
Accounts (oder sonstige beschränkbaren Dateizugriffe) erstellen
muß. Damit kann jeder Nutzer den Teil, für den er
verantwortlich ist bearbeiten.
Das nächste ist, dass angestrebt wird die Navigation
baumähnlich zu gestalten. Damit ist eine klare und
übersichtliche Navigation möglich. Das erleichtert dem Besuche
die Orientierung.

Erstellen von statischen Webseiten für GoOnlineCMS

Erstellen einfacher Inhalte für GoOnlineCMS
Die Erstellung einfacher Inhalte für GoOnlineCMS erfolgt fast
analog zur Erstellung von Normalen HTML-Seiten. Zur besseren
Verständlichkeit erfolgt die Erklärung an der Umwandlung eines
normalen HTML-Dokuments in das GoOnlineCMS-Format:

1.Normales HTML-Dokument
   <!doctype html public "-//w3c//dtd html 4.0
   transitional//en">
   <html>
   <head>
   <!--Metaangaben:-->
     <meta name="Author" content="Name">
     <meta name="Classification" content="Kategorie">
     <meta name="Description" content="Beschreibung">
     <meta name="KeyWords" content="Suchworte">
      <title>Titel der Seite</title>
   </head>
   <body bgcolor="#B3F1D8">
   <!--Hier kommt der Seiteninhalt hin:-->
   </body>
   </html>




2.GoOnlineCMS Dokument
Nun folgt die CMS kompatible Variante
   Dokumentation Titel der Seite
   Kay Strobach Name
   <!--Hier kommt der Seiteninhalt hin:-->




3.Erklärung

Wie man sieht ist der Inhalt der Datei um einiges kleiner
geworden, dass ist dem geschuldet, dass ihr Administrator das
Layout in den groben Zügen festlegt.
Sie brauchen sich demnach nur noch um den Inhalt und nicht mehr
um das Design kümmern.
Dabei sollten für Formatierungen Stylesheets verwendet werden,
um eine einfache Veränderbarkeit des Layouts zu erreichen.
Diese sollten vom Administrator in einer externen CSS-Datei
verwaltet werden! Man sollte die Klassen und ID’s von
Stylesheets beim zuständigen Administrator erfragen.
Die Werte in den eckigen Klammer kennzeichnen Felder wie in
Word. Dabei setzt die Zeichenfolge:
   Dokumentation Titel der Seite
das Feld "title" auf den Wert "Titel der Seite".
Die vorhandenen Felder können vom Administrator frei definiert
werden.
Auch ist die eckige Klammer ('[', ']'), nicht immer das
Erkennungszeichen von Feldern, diese Zeichen kann der
Administrator frei definieren. Bitte erfragen Sie die
Felderkennungszeichen und die erlaubten Felder bei ihrem
Administrator!

Erstellen dynamischer Inhalte für GoOnlineCMS
Das erstellen dynamischer Inhalte für das WWW gewinnt immer
mehr an Bedeutung für Content-Managmentsysteme. Deshalb ist
auch GoOnlineCMS mit der nötigen Funktionalität für das
Einbindens dynamischer Inhalte ausgestattet.
Dynamische Inhalte werden durch das "Einbinden" der Dateien in
das Contentmanagment ermöglicht.
Das heißt man kann die aktuelle Uhrzeit zum Beispiel durch
folgendes Skript ausgeben:
   Dokumentation Titel der Seite
   Kay Strobach Name
   <?
    echo date("d.M.Y h:i:s");  //Das ist PHP-Code
   ?>
oder
   Dokumentation Titel der Seite
   Kay Strobach Name
   <?php
    echo date("d.M.Y h:i:s");
   ?>
Je nach PHP-Installation ist auch die ASP-Notation möglich:
   Dokumentation Titel der Seite
   Kay Strobach Name
   <%
    echo date("d.M.Y h:i:s");
   %>

Wie Sie sehen ist das Einbinden von dynamischen Inhalten sehr
leicht zu bewerkstelligen.
Damit die Funktionen wie fopen, include, usw. auch richtig
funktionieren, gibt es einige zusätzliche Variablen.
              Variable                        Wert
   $pfad                          Pfad des Aktuellen
                                  Verzeichnisses
   $file                          Per GET übergebener Parameter
   $home                          enthält den Pfad vom
                                  DocumentRoot zum Parser-
                                  Script
   ?file=_layout%2F                        enthält den Pfad zum
                                  Layoutverzeichnis
   $parser                        Diese Variable ist
                                  reserviert, ein überschreiben
                                  würde das CMS lahmlegen!!!
Diese Variablen($pfad, ?file=_layout%2F, $home) werden auch im normalen
HTML-Quelltext ersetzt. Somit würde folgendes Listing auf die
Datei "logo.gif" im Layoutverzeichnis verweisen:
   Dokumentation Titel
   Kay Strobach Autor
   <a href="?file=_layout%2F/logo.gif">LOGO</a>
genauso würde auch folgendes funktionieren:
   Dokumentation Titel
   Kay Strobach Autor
   <a href="<?=?file=_layout%2F?>/logo.gif">LOGO</a>
Im ersten Beispiel wird der String ?file=_layout%2F ersetzt und im
zweiten wird er als PHP-Variable ausgegeben.

Generierung des Navigationsbaumes
Der Navigationsbaum besteht aus kleinen Dateien mit dem Namen
'link.csv' (Achtung bitte Groß- / Kleinschreibung beachten).
CSV bedeutet Comma Separated Values (dt.: Komma getrennte
Werte)

Dateieigenschaften
Diese Datei hat folgende Struktur.
   dateiname1.html;Link-Text1;Alt-Text1
   dateiname2.html;Link-Text2;Alt-Text2
   dateiname3.html;Link-Text3;Alt-Text3
   dateiname4.html;Link-Text4;Alt-Text4
   dateiname5.html;Link-Text5;Alt-Text5
   dateiname6.html;Link-Text6;Alt-Text6
   dateiname7.html;Link-Text7;Alt-Text7
   dateiname8.html;Link-Text8;Alt-Text8
Das bedeutet auf jeder Zeile ist der Eintrag für eine Datei
enthalten. Dabei sind verschiedene Eigenschaften das Links
angegeben.
   dateiname*.  gibt den Pfad zu der verlinkten Datei relativ
   html         zur "link.csv"-Datei an
   Link-Text    gibt den Text zwischen <a> und </a> an
   Alt-Text     gibt den Wert des 'alt' Attributes eines Links
                an


Beispiel einer Baumstruktur

Als Beispiel wollen wir folgende Baumstruktur für die
Navigation verwenden:
   |--index.html
   |--infos.html
   |--|--
   index.html
   |--|--
   hallo.html
   Trennlinie
   |--tests.html
   |--|--
   index.html
   |--|--
   kurztests.htm
   l
   |--|--
   langetests.ht
   ml
   |--|--|--
   index.html
   |--|--|--
   archiv.html
   |--|--|--
   archiv2.html
   Trennlinie
   |--
   impressum.htm
   l

Man sieht deutlich den Hierarchischen Aufbau des Baumes.
Als Link-Text soll uns der Einfachheit halber der Dateiname
ohne '.html' dienen. Als Alt-Text verwende ich die eine
fortlaufende Nummer mit dem Vorsatz 'Link'.
Als erstes müssen Sie nun eine Verzeichnisstruktur anlegen die
wie folgt aussieht:

   |--index.html
   |--infos.html
   |--link.csv
   |--            Verzeichnis für die zweite Hierarchiestufe
   verzeichnis1
   |--|--
   index.html
   |--|--
   hallo.html
   |--|--
   link.csv
   |--            Verzeichnis für die zweite Hierarchiestufe
   verzeichnis2
   |--|--
   index.html
   |--|--
   kurztests.htm
   l
   |--|--
   link.csv
   |--|--         Verzeichnis für die dritte Hierarchiestufe
   verzeichnis2_
   1
   |--|--|--
   index.html
   |--|--|--
   archiv.html
   |--|--|--
   archiv2.html
   |--|--|--
   link.csv
   |--
   impressum.htm
   l

Damit die verschiedenen Gliederungen nun auch funktionieren muß
nun in jedes der Verzeichnisse ein 'link.csv'.
Als erstes die aus der Hierarchiestufe eins:

   index.html;Index;LINK1
   infos.html;Infos;LINK2
   --;;
   verzeichnis1/index.html;Index;LINK3
   verzeichnis2/index.html;Index;LINK4
   --;;
   impressum.html;Impressum;LINK5
Wie man erkennt kennzeichnet die Zeichenkette '--;;' eine
Trennlinie
Als nächstes die 'link.csv' in 'verzeichnis1':
   hallo.html;Hallo;LINK3.1

Nun 'verzeichnis2'
   kurztests.html;Kurztests;LINK4.1
   verzeichnis2_1/index.html;LINK4.2
Und last but not least 'verzeichnis2_1'
   archiv.html;Archiv;LINK4.2.1
   archiv2.html;Archiv2;LINK4.2.2

Wie man sieht ist für jede Stufe der Navigation ein eigenes
Verzeichnis anzulegen. das erhöht die Übersichtlichkeit.
Das bedeutet für jede Navigationsstufe und Einheit gibt es eine
'link.csv'.

Der Performance wegen werden alle diese Dateien mit einem
Skript namens 'tree.php' zu einer großen Indexdatei
zusammengefaßt. Wenn man also an einer der 'link.csv' etwas
ändert muß danach dieses Skript über einen Browser aufgerufen
werden.
Darum sollte man mit dem Administrator reden (entweder gesteht
er die Rechte zu oder muß es selber tun).

Probleme und mögliche Fehlerquellen
Fehler können aus verschiedenen Gründen auftreten:
    1.  Überschreiben von Systemvariablen durch dynamischen Seiten
    2.  Einbinden von Binärdateien (mpeg, ...)


   Fehler                       mögliche Ursache
   es erscheint überhaupt       eine dynamische Seite benutzt
   keine Ausgabe                die Variable $parser, oder die
                               Funktion ‚exit;’
   die falsche Datei wird von   die Seite benutzt die Variable
   einer dynamischen Seite      $file zur Übergabe der zu
   geöffnet                     Öffnenden Datei
   die links werden nicht       große link-Datei noch nicht
   aktualisiert                 aktualisiert
   Feldwerte stehen noch in     der Administrator hat nicht die
   der Ausgabe                  eckigen Klammern als
                               Feldidentifizierung genommen
                               Bitte richtige erfragen!
   Feldwerte werden nicht oder  Schreibung der Felder inkorrekt
   nicht richtig angezeigt      oder
                               Felder nicht im Template
                               definiert


Zur Zeit verfügbare Plugins:
Plugins ermögliche die vereinfachte Erledigung verschiedener
Aufgaben. So z.B.: das Erstellen von Bildergalerien. Bitte
erkundigen Sie sich bei Ihrem Administrator über vorhandene
Plugins. Hier folgt nun eine Liste der zur Zeit offiziell
verfügbaren Plugins:

   Name               Autor          Aufgabe(n)
   Bildergalerie 1.0  Kay Strobach   Erstellung von Thumbnails
                                     und Darstellung der Bilder
                                     eines Verzeichnisses und
                                     seiner Unterverzeichnisse
   Termine            Kay Strobach   Erstellung einer
                                     Terminliste aufgrund einer
                                     '*.csv'-Datei
   Log                Kay Strobach   Darstellung der Logdateien
                                     in einer Tabelle

Geplante Erweiterungen:

   Name               Autor          Aufgabe(n)
   Volltextsuche      Kay Strobach   Indizierende Volltextsuche
                                     für die Webseite
   Webfrontend        Kay Strobach   Verwaltung und
                                     Administration des CMS
                                     über die eigene Webseite


Referenzen
         http://www.bebe-dresden.de/new/
         http://www.jrk-dresden.de
         http://kay-s.host.sk
 
How can we help?