WBCE CMS – Way Better Content Editing.
Du bist nicht angemeldet.
Auf Anregung von aquarius60 habe ich mir eines der freien Templates von myresponsee.com vorgenommen. Meine Wahl fiel auf das Blog Template. Die anderen Templates sind zwar auch sehr schick, erfordern aber einiges an speziellen Code und Modulen, um dann auch in echt so schick daherzukommen.
Erst in der Umsetzung des Blogtemplates wurde mir klar, dass das Blogtemplate, auch wenn es vergleichsweise simpel strukturiert ist, auch so einige Besonderheiten hat.
- Für die Icons in der Navigation muss ein Droplet installiert werden (es ist im Template-Zip enthalten und sollte sich einfach über die Importfunktion des Dropletmoduls installieren lassen). Das Droplet ist nicht besonders elegant programmiert, erfüllt aber seinen Zweck, so lange nicht zig Seiten mit Icons versehen werden sollen.
- Wenn Seiten untergeordnete Seiten haben, können die Elternseiten nicht verlinkt werden, da bei Klick auf den Eintrag nur die nachgeordneten Seiten ein-/ausgeblendet werden sollen. D.h. als Elternseite muss jeweils - paradoxerweise - ein Menü-Link-Objekt angelegt werden, unterhalb dem dann die dort anzuzeigenden Inhalte angelegt werden.
Ich habe noch ein paar Optimierungen vorgenommen (die Fonts werden mitgeliefert und nicht von Google gezogen, das Hintergrundbild passt sich in Breite und Höhe dem Bildschirm an, Navigations- und Contentspalte werden per JavaScript auf gleiche Höhe gebracht).
Das Template liefert einen Slider mit. Der lässt sich recht gut mit z.B. dem Members-Modul realisieren. Preset im Template-Zip enthalten.
Die Blogdarstellung der Beiträge lässt sich z.B. mit Topics bauen. Preset im Template-Zip enthalten.
Edit: Anhang entfernt, neue Version weiter unten
Beitrag geändert von florian (18.06.2016 14:58:31)
Code allein macht nicht glücklich. Jetzt spenden!
Offline
Moin. Testseite angelegt. In der Navigation erscheint vor dem Menüpunkt
[[responseenav?i=1]]
Beitrag geändert von screamindan (17.06.2016 16:17:50)
Offline
- Für die Icons in der Navigation muss ein Droplet installiert werden (es ist im Template-Zip enthalten und sollte sich einfach über die Importfunktion des Dropletmoduls installieren lassen).
Code allein macht nicht glücklich. Jetzt spenden!
Offline
Ah... Ich hatte gedacht da wären dann halt nur die Icons nicht zu sehen...
Offline
Nein, leider nicht. Ich bin damit auch nicht zufrieden, an sich müsste es eine Prüfung geben, ob das Droplet installiert ist oder nicht. Nur wusste ich nicht, wie man das bewerkstelligt.
Code allein macht nicht glücklich. Jetzt spenden!
Offline
Ganz einfach kann man checken, ob ein Droplet existiert so:
[== PHP ==]
if($database->get_one("SELECT `id` FROM `".TABLE_PREFIX."mod_droplets` WHERE `name` = 'Dein_Droplet_Name'")){
// ja, es existiert
}
Ich könnte Norbert ansprechen, ob er eine Minifunktion on die Frontend Functions einfügen möchte, mit der könnte man das dann so abfragen:
[== PHP ==]
if(isDroplet('dropletName')){
// ja, es existiert
}
Gruß,
Chris
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Die Icons erfordern sorgfältige Planung der Site. Bei Löschung einer Seite wird die Page ID nicht neu vergeben; hat man 3 Seiten und in der Dropleteinstellung bei 3 das Icon hinterlegt, die ID ist aber jetzt 4 wird nix mehr angezeigt.
Offline
@stefanek: Danke, das werde ich in die nächste Version einbauen.
Wegen der PageID-Symbolzuordnung, ja, das ist mir auch schon aufgefallen. Vielleicht lässt sich da mit einem assoziativen Array und dem menu_title eine elegantere Lösung bauen. Werde da nochmal dran herumprobieren. Aber PHP ist bekanntlich nicht so meine Stärke.
Code allein macht nicht glücklich. Jetzt spenden!
Offline
Grad ma das CSS durchgeguckt. wofür sind denn die ganzen Klassen im responsee.css ganz unten gedacht?
Offline
Ach das ist ja klasse, da werde ich auch mal mit testen!.
Danke
Rock 'n' Roll - WBCE
Offline
Hier die Version 1.1 des Templates.
Folgende Änderungen:
- Es wird geprüft, ob das Droplet responseenav vorhanden ist und jenes nur dann aufgerufen. Ist es nicht da, wird die Navigation "ganz normal" ohne Icons generiert.
- Das Droplet lauscht jetzt auf den Menütitel und nicht mehr die Page-ID. D.h. Wenn es bsp. für die Willkommensseite ein Herzchen geben soll und die Seite den Menütitel "Willkommen" hat, muss im Droplet stehen
...
'Willkommen' => 'heart',
/* ...weitere Zuordnungen... */
...
Mir ist aufgefallen, dass sich das Template nicht mit dem Frontend-Edit von der RFG verträgt, weil es bereits selbst seine eigene jquery-ui lädt, Die RFG versucht, per $.insert die jquery-ui aus dem include-Verzeichnis von WBCE zu ziehen, das kollidiert dann.
(Hintergrund: Ich würde durchaus gern im Template darauf verzichten, dass es seinen eigenen jQuery-Kram lädt, nur geht das nicht so ohne weiteres, weil wir im Core immer noch das Uralt-JQ 1.7.1 mitliefern und das Template mindestens 1.8.3 braucht.)
Zur Frage von screamindan: ich weiß nicht ganau, was Du meinst. Responsee ist in erster Linie ein responsives Grid, da braucht es dann natürlich einiges an Media Queries. Je nach verfügbarem Bildschirmbereich wird dann das Grid aus den s-, m- oder l-Klassen aufgebaut. Details siehe hier.
Code allein macht nicht glücklich. Jetzt spenden!
Offline
Re: Droplets Check
@stefanek: Danke, das werde ich in die nächste Version einbauen.
Florian,
habe jetzt eine Funktion geschrieben, die Droplets von XML Files (wie unten abgebildet) ins Droplets Modul installiert.
[== XML 1.0 ==]
<?xml version="1.0" encoding="UTF-8"?>
<droplet>
<name>string</name>
<description>Droplet that works together with the GlobalString Manager</description>
<comments>Use: [[string?name=YourString]] in Template or on any CMS Page.</comments>
<active>1</active>
<code>
$RetVal = "error(droplet:string)";
if(!function_exists("getStringByName")){
$sFile = WB_PATH."/modules/global_strings/include.php";
if(file_exists($sFile)){
require_once($sFile);
}
}
if(function_exists("getStringByName")){
if(isset($name))
$RetVal = getStringByName((string) $name);
elseif(isset($unique))
$RetVal = getStringByUniqueID(intval($unique));
elseif(isset($fee_switch))
$RetVal = getFeeSwitch();
}
return $RetVal;
</code>
</droplet>
(Das obige Beispiel ist für das Droplet vom AdminTool GlobalStrings Manager.
Die Funktion checkt, ob das Droplet bereits installiert ist, also kommt es nicht zum Überschreiben vorhandener Droplets.
Man kann es per Knopfdruck machen (wie im GlobalStrings Manager) oder automatisch, sobald festgestellt wird, dass das Droplet nicht vorhanden ist.
Falls Du sowas fürs Template brauchst, sag bescheid.
~Chris
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Danke, aber bei Templates ist ja kein Install-Script dabei - wie ließe sich da so ein Installer denn überhaupt integrieren?
Code allein macht nicht glücklich. Jetzt spenden!
Offline
Danke, aber bei Templates ist ja kein Install-Script dabei - wie ließe sich da so ein Installer denn überhaupt integrieren?
Wenn Admin der Gruppe 1 eingeloggt ist, sieht er im Frontend einer Seite mit dem Template, dass da ein Button ist, auf den er klicken muss.
Klickt er den Button, installiert sich das Droplet und der Button verschwindet.
Also SWESS* Technology. :-)
Gruß,
Chris
[* so wie es sein soll]
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Ah, okay. Na, ich warte mal ab, wie das Template so überhaupt angenommen wird. Für andere Templates ist es vielleicht sinnvoller/notwendiger.
Code allein macht nicht glücklich. Jetzt spenden!
Offline