Page 1 of 1
Eigenes Template ohne ThemeManager
Posted: Mon Feb 02, 2009 3:20 pm
by dylan
Hallo zusammen,
ich habe eine grundlegende Frage auf die ich keine Antwort finde.
Ich habe cmsmadesimple heute localhost installiert und möchte nun ein eigenes Template erstellen. Wie ich es von anderen CMS kenne, habe ich den Ordner "admin/themes/default" kopiert und umbenannt: "admin/themes/eigenes".
(Vorab: Ich bin Dipl.-Designer und kenne mich mit HTML und CSS recht gut aus, bitte schickt mir keine Links zu selfhtml, etc., mit html und css kriege ich es normalerweise schon selbst hin.)
Mein Problem ist, dass unter der Administration mein Ordner "eigenes" nicht angezeigt wird. Schlimmer noch, die vorh. Ordner "NCleanGrey" + "default" werden auch nicht angezeigt. Ich vermute mal, dass sich die in der Administration angezeigten Templates (?) "CSSMenu left + 1 column", etc. in diesen Ordnern befinden??? Sorry für meine dummen Fragen, aber für Neueinsteiger ist auf den ersten Blick wirklich nicht gleich ersichtlich wie und wo die relevanten Dateien für ein Template zu finden sind. Ich habe die beiden Ordner einfach einmal umbenannt in "default_loeschen" + "NCleanGrey_loeschen", woraufhin auch die Administration verschwunden war. Nicht verwunderlich, da sich der themes-Ordner auch im admin-Ordner befindet. Aber wo liegen dann die Templates für den Betrachter?
Sorry noch einmal für die damned Fragen, aber ich kann momantan keinen Zusammenhang zur Erstellung eines Templates, ohne Nutzung des ThemeManagers, finden. Den ThemeManager möchte ich nicht nutzen, es geht doch sicher auch ohne, oder?
Re: Eigenes Template ohne ThemeManager
Posted: Mon Feb 02, 2009 4:14 pm
by antibart
Warum solten wir dir einen Link auf SelfHTML schicken? Du hast ja nicht gefragt "wie geht css / html"?
Vorweg:
Du brauchst den Thememanager nicht.
Eigenen Templates und CSS kannst Du über "Layout->Templates->Template hinzufügen" bzw "Layout->stylesheets->stylesheets hinzufügen"anlegen.
Danach solltest Du noch dein meistgenutztes Templates als Standardtemplate definieren (auf rotes Kreuz klicken). Ein Klick auf den Punkt "Auf alle Seiten anwenden" sorgt dafür, dass dein Template auch auf bereits erstellte Seiten angewendet wird. Dann musst Du noch das neue Template mit der/den nötigen css-Dateien verknüpfen (dafür gibt es links neben der Templates-Liste jeweils ein Icon, aus dem "css" zu lesen ist)
Wichtig ist noch, dass die selbst erstellten Templates den CMSMS-Header und alle benötigten Tags enthalten (menu, content, metadata usw)
PS: das Umbenennen von bestehenden System-Ordnern ist meist nicht zu empfehlen und sollte nur dann gemacht werden, wenn man genau weiß, was man tut. Das Hinzufügen von Ordern, die die Verwaltung eigener Dateien betrifft ( alles unterhalb von uploads), ist dagegen kein Problem.
Re: Eigenes Template ohne ThemeManager
Posted: Mon Feb 02, 2009 8:07 pm
by dylan
Danke für Deine Antwort.
Ich habe vor Deiner Antwort bereits ein Template "eigenes" über Templates "Neues Template hinzufügen" hinzugefügt.
Ich habe CSSMenu left + 1 column kopiert, einen neuen Namen eigenes vergeben und meine Auswahl aktiviert.
Als aktuelle CSS-Verknüpfung vom Template eigenes werden jetzt die vorab kopierten Dateien angezeigt:
eigenes : Accessibility and cross-browser tools
eigenes : CSSMenu - Vertical
eigenes : Left sidebar + 1 column
eigenes : News
eigenes : Print
Ich habe über das Admin-Menü Stylesheets » Stylesheet bearbeiten: eigenes : Left sidebar + 1 column probehalber einmal die Hintergrundfarbe (body {background-color: #FF0000;) auf #FF0000 abgeändert. Das hat sofort fuktioniert.
Über dem "Absenden" Button steht der Datei-Status: Zuletzt bearbeitet am: 02/02/09 20:10:24.
Seltsamerweise haben aber alle CSS-Dateien in den Template-Ordnern noch immer den ungeänderten Inhalt, und auch das Datum der CMS-Installation. Wo speichert CMSms die Style- oder Template- Daten, bzw. Änderungen? In der Datenbank vielleicht? Im Quelltext ist aus der stylesheet.php leider auch kein Standort ersichtlich. Nicht ganz einfach ...
Frage: Ist es möglich ohne Administration mit einem simplen Editor, wie Proton o.ä., Änderungen an den CSS- oder Template-Dateien vorzunehmen? Wo liegen die Dateien? Mir würde gefallen wenn ich alle für mein Template relevanten Dateien (PHP, CSS, JS, images) in einem Ordner liegen habe. Ist das realisierbar? Wenn JA, wie?
Danke!
Re: Eigenes Template ohne ThemeManager
Posted: Mon Feb 02, 2009 8:42 pm
by mike-r
dylan wrote:
Seltsamerweise haben aber alle CSS-Dateien in den Template-Ordnern noch immer den ungeänderten Inhalt, und auch das Datum der CMS-Installation. Wo speichert CMSms die Style- oder Template- Daten, bzw. Änderungen? In der Datenbank vielleicht?
Ja, das wird in der DB gespeichert. Die Templates aus den Dateien sind nur die Vorlagen für die Erstinstallation, diese werden in die DB importiert.
Und ja, das ist suboptimal, für CSS gibt es da das Modul static_stylesheet um das zu ändern, für templates ist mir nichts bekannt.
Re: Eigenes Template ohne ThemeManager
Posted: Mon Feb 02, 2009 8:44 pm
by nhaack
Hi Dylan,
Ich lege meine Stylesheets immer in einem festen Ordner im CMS ab... als stinknormale Files. Ich baue diese dann wie normale CSS Dateien in die Templates ein. Nun kann ich sie bequem z.B. mit Notepad++ bearbeiten (mit dem FTP Plug-in) oder mit was auch immer... zudem brauchst du die Stylesheet-Zuweisung nicht mehr über das CMS laufen lassen... das spart ein wenig Zeit. Wenn etwas an einer Site nicht dynamisch ist, dann üblicherweise die Stylesheets

daher verwalte ich diese manuell.
Nur so'n Gedanke
Beste grüße
Nils
Re: Eigenes Template ohne ThemeManager
Posted: Tue Feb 03, 2009 9:11 am
by dylan
Ich lege meine Stylesheets immer in einem festen Ordner im CMS ab... als stinknormale Files. Ich baue diese dann wie normale CSS Dateien in die Templates ein.
Das ist eine gute Idee, ich werde es so machen. Eine Frage dazu: Wie verlinke ich die Styles korrekt, gibt es einen Tag zum gewählten Template-Ordner, in meinem Fall wäre das "
admin/themes/eigenes", der Ordner, den ich selbst angelegt habe.
So würde ich es einsetzen wollen:
Gibt es einen Tag, der den Pfad zum gewählten Template ausgibt, so was wie @import url("{tmpl_dir}/css/eigenes.css");
Um Bilder, z.B. ein Logo, im Template einzubinden, wäre so eine Art "template base_href" sicher auch nützlich?
Ich habe auf der Seite
http://demo.cmsmadesimple.de/index.php?seite=cmsms_tags das
cms_selflink gefunden. Kann ich damit was anfangen?
Ja, das wird in der DB gespeichert. Die Templates aus den Dateien sind nur die Vorlagen für die Erstinstallation, diese werden in die DB importiert.
Wenn ich das Template localhost erstelle, muss ich bei der späteren Installation auf dem server das Template plus CSS "importieren", der theme-Ordner wird nicht zwingend gebraucht?
Danke!
Re: Eigenes Template ohne ThemeManager
Posted: Tue Feb 03, 2009 10:37 am
by antibart
Im Adminbereich würde ich es nicht unbedingt anlegen .. warum nicht einfach den Ordner mit den CSS im Root ablegen.
CMS-Selflink erstellt lediglich eine internen Link zu einer deiner Seiten.
Zur letzten Frage:
Wenn Du die css statisch anlegst, sind sie nicht in der DB und können demnach auch nicht mit-importiert werden. Du packst sie einfach zusammen mir allen anderen Ordnern via FTP auf den Server.
Ich selbst finde es übrigens recht praktisch, die css und templates im Adminbereich bearbeiten zu können, da ich außer dem System keine weiteren Anwendungen öffnen muss. Letztenllich ist das auch einer der Vorteile eines CMS - vieles von einem Ort aus verwalten zu können . Aber das muss jeder selbst wissen.
Re: Eigenes Template ohne ThemeManager
Posted: Tue Feb 03, 2009 6:22 pm
by dylan
Ich habe den CSS-Ordner im Root abgelegt und die Styles im Template fest eingebunden. Und es funktioniert nun auch ... puuhhh

Tausend Dank!
Kann zu meiner vorherigen Frage mit dem Basis-href vielleicht noch jemand was.
Gibt es einen Tag, der den Pfad zum gewählten Template ausgibt, so was wie @import url("{tmpl_dir}/css/eigenes.css");
Um Bilder, z.B. ein Logo, im Template einzubinden, wäre so eine Art "template base_href" sicher auch nützlich?
Gibt es eine Variable oder etwas ähnliches, um z.B. images hinzuzufügen? In dieser Art kenne ich es aus anderen Template Engines oder CMS:
/images/logo.jpg" />
Re: Eigenes Template ohne ThemeManager
Posted: Tue Feb 03, 2009 8:07 pm
by mike-r
dylan wrote:
Gibt es einen Tag, der den Pfad zum gewählten Template ausgibt, so was wie @import url("{tmpl_dir}/css/eigenes.css");
Die Frage habe ich im Groben schon beantwortet:
für CSS gibt es da das Modul static_stylesheet um das zu ändern
Re: Eigenes Template ohne ThemeManager
Posted: Tue Feb 03, 2009 9:46 pm
by cyberman
dylan wrote:
in meinem Fall wäre das "admin/themes/eigenes", der Ordner, den ich selbst angelegt habe.
Noch ein Tipp: Finger weg von /admin/themes - dort sind nur die Styles für die Administration und nix anderes

.
Re: Eigenes Template ohne ThemeManager
Posted: Tue Feb 03, 2009 9:48 pm
by cyberman
dylan wrote:
Den ThemeManager möchte ich nicht nutzen, es geht doch sicher auch ohne, oder?
Der ThemeManager hat mit der Erstellung der Templates rein gar nix zu tun - er dient lediglich dem Ex- und Import von Themes.