Kleine Anregung:
Verfasst: So 1. Jun 2003, 08:43
Irgendwie scheint die Verwendung von Framesets nach wie vor sehr beliebt zu sein (...damit spreche ich auch von mir...zuimdest bis gestern *g*).
Liebes Contenido-Team,
stellt Euch vor, jeder Frame erhält eine ID, und diese wird in der Url übertragen, z.B. index.php?f_id=1. Diese ID stellt eine Zuweisung zu einem Frame dar.
Stellt Euch weiterhin vor, es gibt in den Seiteneinstellungen irgendwo eine Option "Layout = Frameset". Wenn diese Option gesetzt ist, weiss das Contenido-System, dass die Clientseite als Frameset gebaut wurde.
Nun habt Ihr schon den sinnigen Weg gewählt (meiner Meinung nach der einzig sinnvolle bei einem CMS) das Layout in Container aufzuteilen.
Dann ergänzt doch die Container-Einstellungen um eine Option, die dem Container im Falle eines Frameset-Layouts mitteilt, in welchem Frame er zu erscheinen hat und in welchem nicht.
Bedeutet:
- Aufruf index.php
- Keine f_id? -> Hauptlayout (also die Framset Definition)
- Jedes zu ladende Frame ist wiederum die index.php, jedoch mit den notwendigen Anhängen(idcat usw.) UND f_id=1, oder f_id=2
- Beim Zusammenbau des Inhaltes erkennt das System beim auslesen des Headers, dass nur Container zu laden sind, die vorab der FrameID zugewiesen wurden, also lädt nur dieser Container. Ist mit einer einfachen Schleife abzuklären.
Ergebnis: Framsetdarstellung, in jedem Frame steht der oder die Container die in diesem Frame erscheinen sollen.
Erfasst man die einzelnen Frames in der Datenbank, lassen sich später alle Links mittels "SELECT" einem oder mehreren Frames zuweisen. Es müssten dann nur noch die Javascriptanweisungen gecodet werden.
Da gibt es zwei Möglichkeiten:
1.
Hier schreibt man einfach eine Funktion z.B. change_frames() und lässt die übergebenen Variablen per Javascript auslesen. Je nachdem wieviele Variable, in unserem Fall stellt jede Variable ein Frame dar, Javascript ermittelt, entspricht dies der Anzahl der zu bearbeitenden Frames. Diese kann man dann einfach ändern, indem man als Variable die URL überträgt.
2.
Man schreibt einzelne Funktionen, z.B. change_1_frame, change_2_frames, change_3_frames, und lässt contenido anhand der Anzahl der ausgewählten Targets die richtige Javascriptanweisung setzen.
Wie gesagt, funktioniert, ist sehr einfach und hatte ich bis gestern mehrfach in meinem System eingesetzt. Da ich mitterweile jedoch einen Ersatz für Framesets verwende, brauche ich diesen Umstand nicht mehr...
Viel Spaß!
Liebes Contenido-Team,
stellt Euch vor, jeder Frame erhält eine ID, und diese wird in der Url übertragen, z.B. index.php?f_id=1. Diese ID stellt eine Zuweisung zu einem Frame dar.
Stellt Euch weiterhin vor, es gibt in den Seiteneinstellungen irgendwo eine Option "Layout = Frameset". Wenn diese Option gesetzt ist, weiss das Contenido-System, dass die Clientseite als Frameset gebaut wurde.
Nun habt Ihr schon den sinnigen Weg gewählt (meiner Meinung nach der einzig sinnvolle bei einem CMS) das Layout in Container aufzuteilen.
Dann ergänzt doch die Container-Einstellungen um eine Option, die dem Container im Falle eines Frameset-Layouts mitteilt, in welchem Frame er zu erscheinen hat und in welchem nicht.
Bedeutet:
- Aufruf index.php
- Keine f_id? -> Hauptlayout (also die Framset Definition)
- Jedes zu ladende Frame ist wiederum die index.php, jedoch mit den notwendigen Anhängen(idcat usw.) UND f_id=1, oder f_id=2
- Beim Zusammenbau des Inhaltes erkennt das System beim auslesen des Headers, dass nur Container zu laden sind, die vorab der FrameID zugewiesen wurden, also lädt nur dieser Container. Ist mit einer einfachen Schleife abzuklären.
Ergebnis: Framsetdarstellung, in jedem Frame steht der oder die Container die in diesem Frame erscheinen sollen.
Erfasst man die einzelnen Frames in der Datenbank, lassen sich später alle Links mittels "SELECT" einem oder mehreren Frames zuweisen. Es müssten dann nur noch die Javascriptanweisungen gecodet werden.
Da gibt es zwei Möglichkeiten:
1.
Hier schreibt man einfach eine Funktion z.B. change_frames() und lässt die übergebenen Variablen per Javascript auslesen. Je nachdem wieviele Variable, in unserem Fall stellt jede Variable ein Frame dar, Javascript ermittelt, entspricht dies der Anzahl der zu bearbeitenden Frames. Diese kann man dann einfach ändern, indem man als Variable die URL überträgt.
2.
Man schreibt einzelne Funktionen, z.B. change_1_frame, change_2_frames, change_3_frames, und lässt contenido anhand der Anzahl der ausgewählten Targets die richtige Javascriptanweisung setzen.
Wie gesagt, funktioniert, ist sehr einfach und hatte ich bis gestern mehrfach in meinem System eingesetzt. Da ich mitterweile jedoch einen Ersatz für Framesets verwende, brauche ich diesen Umstand nicht mehr...
Viel Spaß!