SteviesWebsite

Farbeinstellungen speichern und auslesen

Code & Blog Logo

Code & Blog Logo

Gestern ging es um die Farben des Standard-Themes. Diese sollen nun in der settings-Tabelle gespeichert werden, so das der User diese Farben im Admin-Bereich verändern kann. Außerdem können so andere Skins auf diese Farben zurückgreifen.

Die Eigenschaften beginnen alle mit “skin”. Danach kommt die Position der Farbe. Bei unseren Farben sieht der Insert-String so aus:

INSERT INTO `cms_settings` ( `property` , `value` )
VALUES (
'skinbgcolor', 'adadad'
), (
'skinforecolor', '525252'
),(
'skinhighlight1', '7cad00'
), (
'skinhighlight2', 'b3fa00'
);

Der Zugriff auf die Farben erfolgt wieder über die Klasses sys. Sie benötig dazu folgende Funktion:

function getColor($id){
    return "#".getSetting("skin".$id);
 }

Hier wird einfach die Position ($id) an die Funktion übergeben. Dann wird die Farbe mit der Präfix skin aus der Setting-Tabelle geladen. Mit einem # am Anfang wird das Ganze dann zurückgegeben.

Die Verwendung der Farben läuft zum Testen erst einmal direkt in der index.php des Skins (system/skins/default). Später soll diese in eine separate Datei kommen, um die Ladezeit zu verringern.

Das ist der neue Code der index.php. Hier werden einfach die Farben ins CSS reingeschrieben:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
  <head>
    <?PHP
      sys::includeHeader();
    ?>
    <style>
      body{
        background-color: <?PHP echo sys::getColor("bgcolor"); ?>;
        color: <?PHP echo sys::getColor("forecolor"); ?>;
      }
      a{
        color: <?PHP echo sys::getColor("highlight1"); ?>;
      }
      a:visted{
        color: <?PHP echo sys::getColor("highlight2"); ?>;
      }
    </style>
  </head>
  <body>
    <div id="breadcrump">
      <?PHP
        sys::displayBreadcrump(" -&gt; ","breadcrump","bc");
      ?>
    </div>
    <?PHP
      sys::includeContent();
      sys::displayGlobalMenu("<ul>","</ul>","<li>","</li>","globalmenu");
      sys::displayLocalMenu("<ul>","</ul>","<li>","</li>","localmenu");
    ?>
  </body>
</html>

Das Design sieht zwar jetzt noch nicht wirklich schön aus, aber die Farben sind schonmal zu sehen. Schaut’s euch an: (Seite kann sich in der Zwischenzeit geändert haben)

http://cms.stevieswebsite.de/testseite.htm

Dies ist ein Beitrag aus der Aktion Code & Blog, in der hier ein eigenes CMS erstellt wird.

RSS Feed für Kommentare zu diesem Artikel. TrackBack URL

2 Kommentare »

  1. Hallo,
    erstmal ein Riesen Lob an dein Tutorial, auf sowas hab ich schon länger gewartet.

    Jetzt zu meinem anliegen:
    Du hast ja deine Style in das Template Dynamisch Reingepackt so das deine Skin datei schnell sehr Groß sein könnte.

    http://www.webmasterpro.de/coding/article/php-in-css-dss-dynamic-style-sheet.html

    Unter diesem Link findet man eine Möglichkeit eine Dynamische CSS Datei zu erzeugen und sie dann zu Importieren. Könnte auch sein das ich du das in einem Weiteren Tutorial beseitigt oder anderes gelöst hast, aber ich bin erst bei diesem Punkt und das ist mir aufgefallen.

    Schöne Grüße

    Kommentar von Ferid — 23. März 2010 @ 17:04

  2. Hi,

    erstmal willkommen im Tutorial.

    In einem späteren Beitrag haben wir die CSS-Sachen auch schon ausgelagert.
    Allerdings ist es bei uns noch nicht so schön aufgeteilt. Werd mir das mal im Hinterkopf behalten.

    Kommentar von Stefan Wienströer — 23. März 2010 @ 18:34

Hinterlasse einen Kommentar

Trackbacks/Pingbacks

LiveEditor - Kostenloser WebEditorDer kostenlose WebEditor hilft dir dabei, deine Website besser zu entwickeln. Mit dem Syntax-Highlighting fällt geht alles viel schneller. Download jetzt! [mehr...]

Blog Tutorials... helfen dir deinen Blog zu verbessern. Nebenbei gibt es noch nützliche Blog-Tools. [mehr...]

WebanalyseFür die Verbesserung Deiner Seite solltest Du wissen, wie sich die Besucher verhalten. Diese Artikel zeigen Dir wie man das am geschicktesten macht. [mehr...]

Code & Blog LogoErstelle dein eigenes CMS mit PHP. Dieses Tutorial wird dir zeigen wie das geht. Also lies dir es durch und frische deine PHP Kenntnisse auf. [mehr...]

Diskussion starten
  • RSS
  • Blogverzeichnis - Blog Verzeichnis bloggerei.de
Farbeinstellungen speichern und auslesen © SteviesWebsite.de - Kontakt | Impressum