In diesem Artikel erfährst du, wie du individuelle Anpassungen per CSS mit ThemeWare® durchführen kannst.
Du hast mit ThemeWare® verschiedene Möglichkeiten, um eigenes CSS-Styling zu deinem Shop hinzuzufügen. Je nachdem, was du ändern möchtest und wie umfangreich die Änderungen sind, wählst du die für dich passende Methode.
Tipp: Das erstellen eines ThemeWare® Duplikates ist für CSS-Anpassungen nicht notwendig.
Bitte beachte, dass individueller Code nicht automatisch komprimiert wird. Komprimiere deinen individuellen Code am besten manuell, bevor du diesen einbindest.
Hinweis: Individueller CSS-Code wird nicht automatisch komprimiert. Komprimiere deinen Code am besten manuell.
Bevor wir zu eigentlichen Einbindungen kommen, möchten wir noch darauf hinweisen, in keinem Fall Originaldateien von Shopware oder Erweiterungen (Plugins, Apps oder Themes) zu bearbeiten. Das kann zu diversen Problemen führen.
Achtung: Bearbeite in keinem Fall Originaldateien von Shopware oder Erweiterungen (Plugins, Apps oder Themes).
Damit du dich möglichst leicht für einen Weg entscheiden kannst, haben wir dir jeweils die Vor- und Nachteile aufgelistet:
Vor- und Nachteile
1. CSS-Code mit der ThemeWare® Konfiguration integrieren
Über die ThemeWare® Konfiguration ist es möglich schnell und unkompliziert kleine CSS-Anpassungen zu hinterlegen. Dieser Code wird zwar nicht komprimiert und es ist lediglich CSS-Syntax möglich, dennoch ist dies der einfachste Weg für Einsteiger.
1.1) CSS-Code mit Textbaustein integrieren
Vorteile
schnelle Vorgehensweise (über die Shopware 6 Textbaustein-Verwaltung)
Nachteile
1.2) CSS-Code mit Konfigurationsfeld integrieren
Vorteile
schnellste Vorgehensweise (über die ThemeWare® Konfiguration)
empfohlene Methode
Die ThemeWare® Konfiguration bietet dir ebenfalls die Möglichkeit eine externe Datei über eine URL einzubinden. Damit kann auch eine Datei welche über ein CDN (Content Delivery Network) verfügbar ist integriert werden.
Vorteile
externe Datei integrierbar
Nachteile
Die derzeit professionellste Methode SCSS-Code zu integrieren, ist die Verwendung eine separaten Erweiterung. Hierfür gibt es spezielle Erweiterungen (Plugins oder Apps) im .
Alternativ kannst du unser kostenfreies "ThemeWare® Customizing Plugin" (Self-managed) bzw. die "ThemeWare® Customizing App" (Cloud) für die Integration von individuellen Anpassungen und eigenen Dateien nutzen.
Vorteile
professionelle Vorgehensweise
SCSS-Syntax möglich
Hinterlege den gewünschten CSS-Code im Textbaustein "twt.custom.css" und aktiviere das folgende Konfigurationsfeld: Tab "Weiteres" => Bereich "Veraltet" => Feld "Individueller CSS-Code (Textbaustein)"
Hinterlege den gewünschten CSS-Code in folgendem Konfigurationsfeld: Tab "Weiteres" => Bereich "Experten-Einstellungen" => Abschnitt "Individueller Code" => Feld "Individueller CSS-Code"
Der Inhalt der Konfigurationsfeldes wird 1:1 in einem <style> Tag im "Head" der HTML-Seite hinzugefügt. Trage hier einfach den gewünschten CSS-Code ein.
Um eine Datei lokal auf deinem Server zu hinterlegen und diese in die Storefront zu integrieren, gehe bitte wie folgt vor:
Logge dich per FTP auf deinem Server ein und wechsle in den Ordner "css".
Ordnerpfad: "public/css/"
Erstelle die Datei "styles.css".
Öffne ThemeWare® im Theme-Manager und wechsle in den Tab "Weiteres" => Bereich "Experten-Einstellungen" => Abschnitt "CSS-Datei".
Trage im Feld "CSS-Datei" den Pfad zur "styles.css" ein. (z.B. "deinshop.de/css/styles.css")
Wähle die Option "Ja" im Feld "CSS-Datei laden" aus.
Eine ausführliche Anleitung findest du im Artikel:
Ist eine CSS-Anpassung nur für einen bestimmten Verkaufskanal relevant, hast du die Möglichkeit deine Anpassung über unsere ThemeWare® Konfiguration mit der "Body-Klasse" einzuschränken.
Hinterlege dafür in der Konfiguration vom entsprechenden Theme (bzw. Theme-Duplikat) für den entsprechenden Verkaufskanal unter Tab "Weiteres" => Bereich "Experten-Einstellungen" => Abschnitt "Individuelle CSS-Klasse" => Feld "Body-Klasse" einen eindeutigen Namen für diesen Verkaufskanal (z.B.: meinshopname).
Dieser Name kann dann durch die Position am HTML-Body für SCSS-Prüfungen genutzt werden.
Ist eine CSS-Anpassung nur für eine bestimmte Seite relevant, hast du die Möglichkeit deine Anpassung über das ThemeWare® Zusatzfeld "Body-Klasse" einzuschränken.
Hinterlege dafür im Zusatzfeld "Body-Klasse" von der entsprechenden Seite (Kategorie) im Tab "Allgemein" => Bereich "Zusatzfelder" => Tab "Kategorien (ThemeWare® ...)" => Zusatzfeld "Body-Klasse" einen eindeutigen Namen für diesen Verkaufskanal (z.B.: meinshopname).
Dieser Name kann dann durch die Position am HTML-Body für SCSS-Prüfungen genutzt werden.
Du kannst die CSS-Hierarchie beim Überschreiben von CSS/SCSS-Anweisungen ganz einfach mit der "Body-Klasse" in der ThemeWare® Konfiguration beeinflussen. Dadurch kannst du unschöne !important Anweisungen vermeiden.
Mehr Informationen dazu findest du in folgender Anleitung:
veraltetet Methode
ausschließlich CSS-Syntax möglich
CSS-Code wird nicht automatisch komprimiert
Nachteile
ausschließlich CSS-Syntax möglich
CSS-Code wird nicht automatisch komprimiert
ausschließlich CSS-Syntax möglich
CSS-Code wird nicht automatisch komprimiert
in der Shopware 6 Cloud nur eingeschränkt möglich
SCSS-Variablen möglich
SCSS-Funktionen möglich
SCSS-Code wird automatisch komprimiert
Nachteile
eher für erfahrende Anwender
nur über eine externe Erweiterung möglich
Hinterlege in der "styles.css" deinen CSS-Code.
Speichere die Änderung der Datei "styles.css" und lade diese ggf. erneut hoch.
Speichere die Einstellungen damit das aktuelle Theme kompiliert wird und Änderungen in die Storefront wirksam werden.
.my-class { color: #000000; }
// Anpassung für den Verkaufskanal mit der Klasse "meinshopname"
.meinshopname h1 {
// Anpassung...
}
// Anpassung für die Kategorie mit der Klasse "meinshopname"
.meinshopname h1 {
// Anpassung...
}
1.1) Individuellen CSS-Code mit Textbaustein integrieren
Wichtig: Diese Option war ein Workaround bis Option 1.2 möglich war. Die Option ist "deprecated" und wird von uns nicht mehr empfohlen und mit einem späteren Update entfernt.
1.2) Individuellen CSS-Code mit Konfigurationsfeld integrieren
Beispiel:
Tipp: Damit die "Experten-Einstellungen" in der Storefront angewendet werden aktiviere bitten den "Experten-Modus" und deaktiviere den "Debug-Modus" von ThemeWare®:
Tab "Weiteres" => Bereich "Experten-Einstellungen" => Experten-Modus
2. CSS-Code mit externer CSS-Datei integrieren
2.1) CSS-Datei auf dem Server erstellen und bearbeiten
2.2) CSS-Datei mit ThemeWare® einbinden
Hinweis: Der Zugriff auf externe Dateien (Dateien auf einer abweichenden Domain) wird nicht empfohlen, beachte hierzu "Cross-Origin Resource Sharing".