Theming und Kundeninstanzen

Story CMS hat ein Theming Konzept, dass sich an Wordpress orientiert. Es gibt ein einfaches Default Frontend, das nahezu 1:1 für www.story-cms.de verwendet wird. Für die Gestaltung der verschiedenen Instanzen werden Themes angelegt, die individuelle Konfigurationseinstellungen, Templateanpassungen, JavaScripts und CSS Styles umfassen können. Darüberhinaus gibt es für die einzelnen Kunden individuell eingerichtete Control Panels, die Unterschied ein den aktivierten Feldern, Sektionen usw. aufweisen.

Theme einrichten

Zunächst wird in der lokaalen entwicklungsumgebung das Theme nach den Vorgaben des Designs umgesetzt. 

1. Templating

Dafür wird ein Ordner mit dem Themenamen (z.B. 'mz') bei den Templates angelegt: /craft/templates/themes/mz. Templateanpassungen werden über 'Hooks' vorgenommen, um den zentralen Story Code von Kundenanpassungen frei zu halten. Hooks sind makroaufrufe, die an signifikaten Stellen im Storycode enthalten sind. so wird 'displayAfterBodyStart(globals, entry)' nach dem <body> Tag aufgerufen.

Theme Templates

2. Styling, Webfonts und Scripts

Frontendanpassungen liegen in z.B /public_html/themes/mz für das MZ Theme. Die kompilierte styles.scss wird automatisch für das Theme geladen.

Theme Folder

3. Konfiguration

Es gibt eine /craft/config/general_defaults.php, die Default Einstellungen für als craft.config variablen enthält. Diese können Instanz bezogen einzeln überschrieben werden. Die Dateien dafür liegen in  /craft/config/clients/... und müssen als craft/config/general.php auf den Liveserver kopiert werden. 

In /craft/config/clients/... liegen desweiteren die Datenbankzugänge db.php, die Craft Lizenzen und angepasste .htaccess Dateien.

Client Config

Einrichten einer Kundeninstanz

In /STORY/02_Docs/StoryInstanzEinrichten.xlsx ist eine Checklist enthalten, die alle Schritte zur einer Einrichtung einen Kundeninstanz beschreibt. Ausserdem sind dort CP Einstellungen gelistet, für die zu entscheiden ist, wie sie für den jeweiligen Kunden gesetzt werden sollen.

Teilen