ich habe für die Version 1.00.18 ein paar Veränderungen vorgenommen und möchte Euch bereits eine kleine Änderung nennen.
Es wird eine neue Möglichkeit geben, sein Seitenlayout zu erstellen.
Unter dem Spoiler ist der Code, wie diese Datei als Dev-Variante aufgebaut ist.
Die Kommentare die hier aufgeführt sind sollen Euch hierbei helfen, was an welcher Stelle gemacht wird. Die HTML-Datei ist dann als layout.html in dem entsprechenden Themeordner zu speichern.
Solltet Ihr Fragen haben, dann schreibt es hier in dieses Thema.
Wer will kann mir auch gerne schon mal erstellte Layouts zukommen
In die theme.php muß man dann noch eine Funktion einfügen, und fertig ist die neue Layoutdarstellmöglichkeit.
Ich würde mich über interessante Themes freuen. Vorhandene Themes für BS-Fusion bleiben kompatibel
// Die Layoutfunktion function theme_layout(){ global$settings,$userdata,$locale,$bs_session,$db; // Generiere hier deinen eigenes Layout require_once(THEME_DIR."layout.html"); }
<!-- Zusätzliche CSS-Styles, JScripte, Ajax, Metas --> </head> <bodybgcolor="#ffffff"text="#555555"> <!-- Diese Zeile muss fest integriert bleiben an dieser Stelle --> <scripttype='text/javascript'src='http://development.bs-fusion.org/jscripts/wz_tooltip.js'></script>
<!-- Ab hier beginnt das Seitenlayout und kann ohne echo Befehle erstellt werden. Es wird geprüft, ob die verschiedenen Panels vorhanden sind und werden dann über den PHP Echo Befehl ausgegeben. Wir möchten Euch mit dieser Datei die Möglichkeit geben, eine ganz individuelle Homepage aufzubauen. Gerne stehe ich Euch bei Fragen zur Verfügung -->
<!-- Header Teil -->
<!-- Sublinks --> <?php echo showsublinks(); ?>
<!-- Kopfdatum --> <?php echo showsubdate(); ?>
<!-- Anzeige der Linken Panels --> <?php if (LEFT_PANEL){ ?>
<?php echo LEFT_PANEL; ?>
<?php } ?>
<!-- Anzeige der Center Top Panels --> <?php if (CENTER_TOP){ ?>
<?php echo CENTER_TOP;?>
<?php } ?>
<!-- Anzeige des Hauptinhaltes --> <?php echo CONTENT; ?>
<!-- Anzeige der Center Bottom Panels <?php if (CENTER_BOTTOM) { ?>
<?php echo CENTER_BOTTOM; ?>
<?php } ?>
<!-- Anzeige der Rechten Panels --> <?php if (RIGHT_PANEL){ ?>
<?php echo RIGHT_PANEL; ?>
<?php } ?>
<!-- Anzeige des Footers --> <?php echo showcopyright("footer","image");?>
Eine weitere Neuheit ist die showcopyright() Funktion, in welcher man entscheiden kann, ob das Copyright als Bild oder Text angezeigt werden soll.
Ersetzt die Funktion mit diesem Code. In der Anlage ist die Grafik, welche im /images Verzeichnis liegen muss. Durch $padding habe ich eine Möglichkeit gegeben, die Grafik im Layout besser zu postieren.
Klingt interessant.
Hab zwar überhaupt noch nicht verstanden, wie man das genau anstellt (bei mir kräuseln sich schon die Haare bei der neuen Funktion im theme.php ....
Aber das man wohl nun viele Möglichkeiten hat, erkenne ich ...
Wo genau, an welcher Stelle und was ist mit den Templates ... ForumViewthread, Artikel ...
da hätt ich noch tausend Fragen
Nunja, ich werde mal schauen ... heut nicht mehr ...
Zwei Sachen habe ich noch, die mir eben aufgefallen sind.
Und zwar habe ich mich gerade dumm und dämlich nach der Funktion loadHeader gesucht. Muss die in der class.template.php sein?
Ich finde, das alles was mit dem Design/Theme zu tun hat in die theme.php sollte, dann muss man sich nicht durch zig Dateien wühlen um eine bestimmte Funktion zu ändern.
Außerdem wäre es schon wenn es so etwas wie eine header_include.php und footer_include.php geben würde, wo man z.b Tracking Code oder so einbauen kann, so das man nicht bei jedem Update daran denken muss, die Dateien upzudaten, wenn sie den geändert wurden.
Ach ja, wo werden bei dem neuen Layout Möglichkeiten, die Funktionen LEFT CENTER RIGHT definiert? Habe ich irgendwie noch nicht so ganz verstanden
Hehe ... mir gehts/gings da ähnlich .... Manuel hat mir nen bisschen erklärt.
Aber erstmal grundsätzlich: obige Beschreibung gilt noch NICHT für die aktuelle Version 1.00.17 sondern ist noch im DEV Zustand.
Und in der Tat ist es (leider, oder in unserem Fall auch wohl notwendigerweise) so, das Dinge dann in der theme.php (aber nicht mehr viel), in der layout.html und in den Templates geregelt.
Die theme.php hat fürs Aussehen kaum noch Relevanz.
Die layout.html ist für den grundsätzlichen Aufbau, z.B. ob und wo ein linkes Panel hinkommt.
Aber der Rest wird nach wie vor über die Templates gemacht.
In der layout.html, kann man dann auch google - schei** einbauen
Auch für die aktuelle Version kann man left oder right Panel in den einzelnen Templatedateien definieren.
z.B: in der article.tpl.php kann man sagen das das rechte Panel aus sein soll:
Die Layout Möglichkeiten, werden damit sicherlich wesentlich einfacher. Allerdings ist man immer noch auf das starre 2-3 Spalten Layout gebunden. Schöner wäre es, wenn man Panels/Boxen beliebig auf der Seite platzieren könnte. Allerdings braucht man dafür wohl eine andere Template Engine, die das ermöglicht. Wäre mir aber schon wieder zu viel und zu kompliziert, mir reicht es auch so wie es ist.
Mittlerweile habe ich so um die 15 Webseiten und wenn man da auf dem laufenden bleiben will, ist das schon eine Menge Arbeit, da habe ich es lieber einfach und unkompliziert
Die Layout Möglichkeiten, werden damit sicherlich wesentlich einfacher. Allerdings ist man immer noch auf das starre 2-3 Spalten Layout gebunden. Schöner wäre es, wenn man Panels/Boxen beliebig auf der Seite platzieren könnte.
Sorry ... dann hast Du das obige NICHT verstanden .... denn genau das kann man !!!
Durch die layout.html kann man das genau bestimmen.
Aber ich weiss .. ich finds auch etwas kompliziert ... vielleicht schaffen wir mal 1-3 Demoseiten zu basteln, dann sieht man die Möglichkeiten
Nein ich glaube du hast mich nicht ganz verstanden oder wir reden aneinander vorbei.
Ich versuche das mal anders zu erklären und nehme als Beispiel Eventzeiger.
Dort wird auf der Startseite, in der Mitte Neu Partybilder etc angezeigt etc und auf der rechten Seite die Flyer.
So wenn ich jetzt z.b. auf Events gehe, soll in der Mitte der Event Kalender erscheinen, rechts daneben z.b. die Populärsten Events und wieder daneben die Flyer.
Gehe ich jetzt auf Community, soll links das Community Menü erscheinen, in der Mitte der entsprechende Content und Links vielleicht die neusten User und neue private Galerien.
Also für jede Seite die ich aufrufe, soll sich der komplette Content ändern und der Inhalt der rechten und Linken Seite soll sich dabei auch ständig ändern.
Und wenn ich jetzt nicht ganz falsch liege, bleibt mir bei diesem Template System nur die Möglichkeit zu sagen die Boxen der Linken/Rechten sollen eingeblendet werden oder nicht. Ich kann aber nicht sagen Box A soll z.b nur im Bereich Community eingeblendet werden und sonst nirgends.
Ich hoffe ich habe das einigermaßen Verständlich ausgedrückt, allerdings habe ich oben auch geschrieben, das es nicht ganz so wichtig ist, da es ja mit einigen Umwegen möglich ist, einzelne Boxen auf verschiedene Seiten anzuzeigen, wie man auf der Support Seite ja am Menü sieht.
mmhh ... nun, vielleicht schreibt der silvermoon mal was dazu ....
Es ist ja auch so, das es noch in der Entwicklung ist und vielleicht noch mehr gemacht wird.
Und ich habs ja auch noch nicht 100% durchschaut.
Ich persönlich frage mich allerdings, warum Du überhaupt mit phpFusion arbeitest, wo es doch richtige CMS System gibt Mit joomla wären Deine Sachen bestimmt einfach zu regeln