Module Input/Output
Module Input/Output
Hallo,
ich kapier das mit dem Input/Output Code im Styles-Module nicht ganz. Ich verwende die Version 4.4.4
Output ist das was im Frontend nachher ausgegeben wird . SPrich ne Datenbankabfrage die DAten ausgibt
Input ist die EIngabemaske im Adminbereich oder wozu ist die genau ?
Wozu sind die vordefineirten Platzhalter
CMS_HEAD[x]
ich kapier das mit dem Input/Output Code im Styles-Module nicht ganz. Ich verwende die Version 4.4.4
Output ist das was im Frontend nachher ausgegeben wird . SPrich ne Datenbankabfrage die DAten ausgibt
Input ist die EIngabemaske im Adminbereich oder wozu ist die genau ?
Wozu sind die vordefineirten Platzhalter
CMS_HEAD[x]
Warst wieder schneller, timo...
Aber weil ich es schon geschrieben hatte:
Der Input wird ausgegeben, wenn Du im Backend auf Konfiguration gehst (z.B. des Templates, der Kategorie oder des Artikels, wenn dem Artikel selbst ein Template zugewiesen wurde).
Ausgegeben wird alles, was Du da so rein schreibst, auch "Hallo Welt" oder HTML. Wenn Du PHP-Code in der entsprechenden Syntax reinschreibst, wird dieser bei Aufruf der jeweiligen Konfiguration ausgeführt.
Der Output ist im Prinzip dasselbe, nur wird dieser ausgegeben, wenn man sich die Seite im Frontend ansieht. Dies kann ebenfalls HTML und/oder PHP-Code mit Datenbank-Abfragen sein.
Trifft Contenido auf spezielle Platzhalter, e.g. CMS_VAR, CMS_VALUE, CMS_HEAD, CMS_HTML usw. werden diese durch speziellen Code ersetzt. Aus CMS_HTML wird im Backend z.B. HTML, welcher dafür sorgt, das im Backend (im Editor, nicht SPAW) ein Feld zum Eingeben von Text und die Icons "HTML" und "Speichern" in die Seite eingebunden werden.
CMS_VAR und CMS_VALUE sind spezielle Elemente, die man dafür nutzt, um Werte in der Contenido-Datenbank zu speichern. Recht häufig wird z.B. die Kombination aus CMS_VAR (interner Name des Feldes) und CMS_VALUE (Wert des Feldes) verwendet, um Einstellungen in der Konfiguration (Input, Backend) für die Ausgabe (Output, Frontend) zur Verfügung zu stellen. Schönes Beispiel-Modul: Artikelliste.
Ansonsten: Handbuch schon gelesen, http://www.contenido-faq.de besucht?
Gruß
HerrB
Aber weil ich es schon geschrieben hatte:
Der Input wird ausgegeben, wenn Du im Backend auf Konfiguration gehst (z.B. des Templates, der Kategorie oder des Artikels, wenn dem Artikel selbst ein Template zugewiesen wurde).
Ausgegeben wird alles, was Du da so rein schreibst, auch "Hallo Welt" oder HTML. Wenn Du PHP-Code in der entsprechenden Syntax reinschreibst, wird dieser bei Aufruf der jeweiligen Konfiguration ausgeführt.
Der Output ist im Prinzip dasselbe, nur wird dieser ausgegeben, wenn man sich die Seite im Frontend ansieht. Dies kann ebenfalls HTML und/oder PHP-Code mit Datenbank-Abfragen sein.
Trifft Contenido auf spezielle Platzhalter, e.g. CMS_VAR, CMS_VALUE, CMS_HEAD, CMS_HTML usw. werden diese durch speziellen Code ersetzt. Aus CMS_HTML wird im Backend z.B. HTML, welcher dafür sorgt, das im Backend (im Editor, nicht SPAW) ein Feld zum Eingeben von Text und die Icons "HTML" und "Speichern" in die Seite eingebunden werden.
CMS_VAR und CMS_VALUE sind spezielle Elemente, die man dafür nutzt, um Werte in der Contenido-Datenbank zu speichern. Recht häufig wird z.B. die Kombination aus CMS_VAR (interner Name des Feldes) und CMS_VALUE (Wert des Feldes) verwendet, um Einstellungen in der Konfiguration (Input, Backend) für die Ausgabe (Output, Frontend) zur Verfügung zu stellen. Schönes Beispiel-Modul: Artikelliste.
Ansonsten: Handbuch schon gelesen, http://www.contenido-faq.de besucht?
Gruß
HerrB
Beispiel
sag mal ein Beispiel:) Ich habe jetzt die Anleitung 10 mal für diese STelle durchelesen, FAQ durchgewühlt abe rirgendwie fehlt mir der letzte RUck:)
Ich kapiers vom Prinzip einfach nicht:)
Ich kapiers vom Prinzip einfach nicht:)
Da ist eigentlich alles drin, was man so braucht. Wenn man den Artikel, in dessen Template das Modul verwendet wird, konfiguriert, sieht man das Ergebnis aus Input.Schönes Beispiel-Modul: Artikelliste.
Wird das Modul als Bestandteil der Webseite aufgerufen, liefert es eine anklickbare Liste der Artikel in der Kategorie.
Mir fehlt gerade der Input-Code, aber im Output steht i.A. sowas wie
Code: Alles auswählen
$selcat = "CMS_VALUE[0]"; // selected category
Und damit Mensch nicht die idcat in $selcat manuell eintragen muss, enthält der Input Code, der einem die Auswahl der Kategorie über eine Dropdown-Box ermöglicht. Die Auswahl wird in CMS_VALUE[0] in Input beim Konfigurieren gespeichert und bei der Darstelung der Webseite im Output zur Ausführung verwendet.
Natürlich benötigt man nicht immer den Input-Bereich. Die Text (HTML)-Module enthalten z.B. nur die Ausgabe von CMS_HTML - dieser Wert wird - solange man den Artikel editiert durch das erwähnte Konstrukt ersetzt, welches In-Site-Editing ermöglicht (nicht SPAW, der SPAW-Editor erscheint erst, wenn man auf das Icon HTML unterhalb des Eingabebereichs klickt).
Aber vielleicht beschreibst Du, was Du machen möchtest, vielleicht fällt es dann leichter.
Gruß
HerrB
Auch ohne deine Frage beantworten zu können (oder vielleicht auch gerade deshalb):
Ich würde bei dieser Auswahl Contenido nehmen, genauer gesagt: ich habe Contenido genommen.
Unter anderem auch weil C. mich nicht zwingt, mich im Detail mit der DB-Struktur auseinanderzusetzen - es funzt auch ohne dieses Wissen.
Grüße
Louis
Ich würde bei dieser Auswahl Contenido nehmen, genauer gesagt: ich habe Contenido genommen.
Unter anderem auch weil C. mich nicht zwingt, mich im Detail mit der DB-Struktur auseinanderzusetzen - es funzt auch ohne dieses Wissen.
Grüße
Louis
Wir können den Wind nicht ändern, aber die Segel anders setzen
(Aristoteles)
(Aristoteles)
@miefert:
In slow motion:
Layout verfügt über Container. Module sind definiert. Anschließend definierst Du in einem Template, welches Modul an der Stelle welchen Containers eingefügt werden soll (d.h. Layout + Module = Template).
Für jedes Template kannst Du eine Vorkonfiguration durchführen. Dabei wird in den Modulen der Code in Input ausgeführt (hat das Modul keinen Code in Input, kann man auch nix konfigurieren). Enthält der Input eines Moduls Code mit den entsprechenden CMS_VAR und CMS_VALUE Platzhaltern, wird der Wert, den Du in einem ggf. vorhandenen Feld einträgst beim Speichern der Vorkonfiguration gespeichert.
Nun gehst Du in Content -> Kategorie und kannst dort einer Kategorie (im Prinzip einem Ordner) ein Template zuweisen. Im Rahmen der Zuweisung sollte man die Konfiguration bestätigen (sicher ist sicher). Alle Artikel in dieser Kategorie, die über kein eigene Template-Zuordnung verfügen, nutzen dieses Template in der Konfiguration, wie sie für die Kategorie durchgeführt wurde.
Alternativ kann man auch einem Artikel in einer Kategorie ein eigenes Template zuweisen, bei dem man wieder die Konfiguration durchführen muss (d.h. dass die Konfiguration zwischen Kategorie und Artikel unterschiedlich sein könnte).
Wird der Artikel angezeigt (als Webseite oder im Editor), wird der Code in Output ausgeführt. Dabei werden die Platzhalter CMS_VALUE[x] durch den Wert ersetzt, der in der Konfiguration gespeichert wurde.
Wenn Du also den Wert im Output (d.h. wenn der Artikel angezeigt wird) wieder auslesen möchtest, musst Du nur $variable = "CMS_VALUE[100]" (100 = entsprechend verwendete ID) an der gewünschten Stelle verwenden. Bei Ausgabe des Codes wird automatisch CMS_VALUE[100] durch den entsprechenden Wert aus der DB ersetzt (geparst). Es ist eine Textersetzung:
Beispiel:
Es sei CMS_VALUE[100] = Hans
Code im Output:
$variable = "CMS_VALUE[100]";
echo $variable;
Daraus wird intern (das siehts Du nirgends):
$variable = "Hans";
echo $variable;
D.h. CMS_VALUE[100] = "Hans"; geht nicht, da es sich bei CMS_VALUE[100] nicht um eine Variable handelt.
Wenn es das jetzt nicht war, dann würde ich mich freuen, wenn Du Dein eigentliches Problem noch beschreiben könntest - so richtig verstehe ich dann gerade nicht, worauf Du hinaus willst...
Gruß
HerrB
Die Eingaben, die Du bei der Konfiguration bzw. Vorkonfiguration des Templates machst, werden gespeichert, sobald Du auf OK klickst. Gespeichert werden sie irgendwo in der Datenbank (habe es jetzt gerade nicht im Kopf).Wie bzw. wo werden den die Werte die in der Eingabe gemacht werden gespeichert ?
In slow motion:
Layout verfügt über Container. Module sind definiert. Anschließend definierst Du in einem Template, welches Modul an der Stelle welchen Containers eingefügt werden soll (d.h. Layout + Module = Template).
Für jedes Template kannst Du eine Vorkonfiguration durchführen. Dabei wird in den Modulen der Code in Input ausgeführt (hat das Modul keinen Code in Input, kann man auch nix konfigurieren). Enthält der Input eines Moduls Code mit den entsprechenden CMS_VAR und CMS_VALUE Platzhaltern, wird der Wert, den Du in einem ggf. vorhandenen Feld einträgst beim Speichern der Vorkonfiguration gespeichert.
Nun gehst Du in Content -> Kategorie und kannst dort einer Kategorie (im Prinzip einem Ordner) ein Template zuweisen. Im Rahmen der Zuweisung sollte man die Konfiguration bestätigen (sicher ist sicher). Alle Artikel in dieser Kategorie, die über kein eigene Template-Zuordnung verfügen, nutzen dieses Template in der Konfiguration, wie sie für die Kategorie durchgeführt wurde.
Alternativ kann man auch einem Artikel in einer Kategorie ein eigenes Template zuweisen, bei dem man wieder die Konfiguration durchführen muss (d.h. dass die Konfiguration zwischen Kategorie und Artikel unterschiedlich sein könnte).
Wird der Artikel angezeigt (als Webseite oder im Editor), wird der Code in Output ausgeführt. Dabei werden die Platzhalter CMS_VALUE[x] durch den Wert ersetzt, der in der Konfiguration gespeichert wurde.
Wenn Du also den Wert im Output (d.h. wenn der Artikel angezeigt wird) wieder auslesen möchtest, musst Du nur $variable = "CMS_VALUE[100]" (100 = entsprechend verwendete ID) an der gewünschten Stelle verwenden. Bei Ausgabe des Codes wird automatisch CMS_VALUE[100] durch den entsprechenden Wert aus der DB ersetzt (geparst). Es ist eine Textersetzung:
Beispiel:
Es sei CMS_VALUE[100] = Hans
Code im Output:
$variable = "CMS_VALUE[100]";
echo $variable;
Daraus wird intern (das siehts Du nirgends):
$variable = "Hans";
echo $variable;
D.h. CMS_VALUE[100] = "Hans"; geht nicht, da es sich bei CMS_VALUE[100] nicht um eine Variable handelt.
Wenn es das jetzt nicht war, dann würde ich mich freuen, wenn Du Dein eigentliches Problem noch beschreiben könntest - so richtig verstehe ich dann gerade nicht, worauf Du hinaus willst...

Gruß
HerrB
^^ aber nur solange du module von anderen verwendest, wenn du eigene Module schreibst ( Navigation zum Bleistift ) sollte man schon bissle Ahnung von Contenido und dem DB-Aufbau haben.Louis hat geschrieben:Auch ohne deine Frage beantworten zu können (oder vielleicht auch gerade deshalb):
Ich würde bei dieser Auswahl Contenido nehmen, genauer gesagt: ich habe Contenido genommen.
Unter anderem auch weil C. mich nicht zwingt, mich im Detail mit der DB-Struktur auseinanderzusetzen - es funzt auch ohne dieses Wissen.
Grüße
Louis
Gruß
Sky
Dem ist nichts hinzuzufügen, außer Zustimmung vielleichtSkyBlader hat geschrieben:^^ aber nur solange du module von anderen verwendest, wenn du eigene Module schreibst ( Navigation zum Bleistift ) sollte man schon bissle Ahnung von Contenido und dem DB-Aufbau haben.

Aber da unterscheidet sich Contenido nicht vom wirklichen Leben: Wenn man anfängt etwas zu bauen sollte man (a) das Ziel vor Augen haben und (b) wissen was man tut.
Bei Contendio kann man aber sehr schön klein anfangen und existierende Module "aufbohren" - notfalls hilft die Community (wenn man sich nicht vollkommen blöd anstellt jedenfalls)
Wir können den Wind nicht ändern, aber die Segel anders setzen
(Aristoteles)
(Aristoteles)