Drupal 10.1.4 Themes erstellen
am 05.10.2023 - 07:44 Uhr in
Guten Morgen Community,
ich habe vor Jahren Drupal 8 angelernt. Bin aber aus zeitlichen gründen nicht mehr dazu gekommen, weiter intensiv mich damit zu beschäftigen. (Schade)
Jetzt wo ich etwas zeit haben, möchte ich wieder mich damit beschäftigen.
Nun habe ich gesehen, dass sich zu Drupal 8 zu Drupal 10.1.4 sehr viel verändert hat.
Wollte als erstes ein Theme erstellen, da ich schon Erfahrung in erstellen von Template bei anderen CMS (Joomla, html, css) habe.
Wollte mein Style was ich als reines html habe, für Drupal 10 erstellen.
Nun habe ich gesehen, dass es nicht viele Tutorial für Drupal 10 beim Thema "Theme" gibt (deutsch).
Kann mir jemand da weiter helfen, damit ich die Grundlagen eines Drupal 10.1.4 Theme verstehe.
Ich habe viele Webseiten bzw. Forum durch gelesen, beim erstellen von Themes für Drupal 10.
Aber es sind immer nur Stichpunkte, und kein Komplettes Tutorial oder Video(deutsch).
z.B. weiß ich nicht genau, wo ich eine html Seite ablegen muss, in der Drupal 10 Ordnerstruktur oder wie ich eine css einbinden muss.
Bei anderen cms was es etwas einfacher. Aber ich habe damals gerne mit Drupal gearbeitet, würde es gerne wieder anwenden.
Ich hoffe jemand kann mir da etwas unterstützen bzw. Hilfsreiche Informationen geben.
Mit freundlichen Grüßen
MacLeod
- Anmelden oder Registrieren um Kommentare zu schreiben
HI MacLeod, Schön, dass Du
am 05.10.2023 - 12:31 Uhr
HI MacLeod,
Schön, dass Du Drupal treu bleiben willst.
Was das Theme angeht, so hat sich nicht sooo viel geändert.
Um das CSS zu überschreiben, brauchst Du ein Subtheme.
Nur so kannst Du verhindern, dass bei einem Sicherheits-Update Deine Änderungen überschrieben werden.
Bei Drupal 10 ist Olivera das Standardtheme, statt Bartik.
Du kannst aber auch jedes andere Theme verwenden, ich verwende z.B. Bootstrap Barrio.
Es gibt keinen echten Grund, das Theme komplett selbst zu erstellen.
Du entscheidest Dich also für Olivera oder installierst mit Composer eines der vielen anderen Themes.
Das landet dann im Ordner:
/web/theme/contrib.
Die meisten Themes haben schon ein Grundgerüst für ein s.g. Subtheme und dazu eine Anleitung, wie man das erstellt.
Dieses Subtheme legst Du dann in den Ordner /web/theme/custom
Hier zwei Anleitungen:
https://www.drupal.org/docs/8/themes/barrio-bootstrap-4-drupal-89-theme/...
https://github.com/mherchel/olivero-subtheme
Letztendlich gibt es dann im Subtheme Ordner einen Ordner css und darin eine Datei meinname.css, in der Du Deine Änderungen am Style machst.
Ich habe gleich mehrere CSS-Dateien und binde die mit Breakpoints ein, um unterrschiedl. Dateien für unterschiedl. Bildschirmbreiten zu haben.
auch dazu gibt es Anleitungen, die je nach Mutter-Theme variieren können.
Kommt ja auch drauf an, ob Du mit scss arbeitest.
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Hallo, ich bevorzuge das
am 05.10.2023 - 15:04 Uhr
Hallo, ich bevorzuge das W3css-Theme, das auch ein sehr schlankes Subtheme mitbringt. Bei diesen Subtheme siehst Du in etwa, was minimal für das Aufsetzen eines eigenen Themes benötigt wird. Ich stimme aber Regina zu, daß es nicht viel Sinn macht, ein Theme komplett neu aufzusetzen. Mit einem Subtheme bist Du schneller bei Ergebnissen.
z.B. weiß ich nicht genau, wo ich eine html Seite ablegen muss
Das macht man eigentlich bei Drupal nie. Das HTML wird zur Laufzeit aus entsprechenden Templates zusammengesetzt. Die fertige Seite existiert eigentlich nur im Browser.
Wenn Du komplette HTML-Strukturen ablegen willst, geht das nur in einem Twig-Template. Über entsprechende Namens-Konventionen wird dieses Template dann von Deinem Theme zum gewünschten Zeitpunkt aufgerufen und Deine HTML-Struktur ausgegeben.
Eigene Templates können für Teilbereiche der Seite sinnvoll sein, etwa für spezielle Blöcke oder spezielle Inhalte (Inhaltstypen). Das würde aber erst einmal zurückstellen und mich in das aktuelle Drupal System einarbeiten. Seit den Anfänge von Drupal 8 hat sich da doch einiges getan. Heute kommt man ohne den Einsatz der Kommanozeile und den Tools composer und drush nicht richtig vom Fleck. Ich bin der Meinung, daß sich dieser Aufwand lohnt.
Viel Erfolg beim Neuentdecken von Drupal.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Guten Morgen Ihr
am 12.12.2023 - 11:30 Uhr
Guten Morgen Ihr beiden,
wollte euch mitteilen dass bis jetzt alle eure Ratschläge umgesetzt habe.
Und es hat auch bis jetzt ohne Probleme geklappt.
Nun wollte ich über /drupal/themes/contrib/d8w3css/drupal8_w3css_subtheme/css/d8w3css-subtheme-style.css anpassungen zum testen, ob auch alles übernommen wird. Leider übernimmt er die Anpassung nicht:
z.B.
html, body{
background-color: rgba(197, 22, 83, 0.5);
}
.w3-col w3-clear w3-theme-d4 {
background-color: rgba(197, 22, 83, 0.5);
}
Ist es nicht normalerweise üblich, dass unter eine stylesheet ausgegeben wird?
oder muss ich Irgendwo die css noch unter Einstellung aktivieren?
Das Themes ist als Standard Aktiviert.
für Hilfe wäre ich sehr dankbar.
MacLeod
Ohweh....da kannman nur
am 12.12.2023 - 12:29 Uhr
Ohweh....da kannman nur schwer etwas sagen, wenn man die Struktur nicht kennt.
Normalerweise hat man einen Ordner /drupal/themes/contrib/theme-wie-auch-immer-es-heißt
Und einen Ordner /drupal/themes/custom/subtheme-wie-auch-immer-es-heißt
Und im Subtheme einen Ordner css mit einer wie-auch-immer.css
Und die ist über eine libraries.yml-Datei eingebunden.
Kann natürlich bei Dir anders sein.
Jedenfalls kannst Du ja im Quelltext checken, ob Deine d8w3css-subtheme-style.css eingebunden wird.
OH, gerade fällt mir auf:
.w3-col w3-clear w3-theme-d4 {
background-color: rgba(197, 22, 83, 0.5);
}
Vor w3-theme-d4 fehlt der Punkt.
Sollte es das schon gewesen sein?
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Hallo, danke das du
am 12.12.2023 - 14:40 Uhr
Hallo,
danke das du geantwortet hast.
ich habe das Themes "w3css" von wla installiert per Composer und hatte damit Null Probleme :-).
Ordner siehe Anhang.
Die Ordner /drupal/themes/contrib/d8w3css/
config,
css,
drupal8_w3css_subtheme
js,
templates,
Ordner
drupal8_w3css_subtheme/
css,
js,
templates
Datei: d8w3css-subtheme-style.css
d8w3css-subtheme-global:
version: VERSION
css:
theme:
css/d8w3css-subtheme-style.css: {}
js:
js/d8w3css-subtheme-script.js: {}
Aber im Quelltext sehen ich leider diese css datei (d8w3css-subtheme-style.css) nicht.
Siehe Anhang.
Gruß
Im Quelltext kannst Du die
am 12.12.2023 - 15:21 Uhr
Im Quelltext kannst Du die Datei nicht sehen, weil Du Komprimierung eingestellt hast.
Das solltest Du während der Entwicklung ausschalten.
Wo hast Du das hier eingetragen?
d8w3css-subtheme-global:
version: VERSION
css:
theme:
css/d8w3css-subtheme-style.css: {}
js:
js/d8w3css-subtheme-script.js: {}
Aus Deinem Text verstehe ich, dass das in der CSS Datei steht.
Muss in die libraries.yml.
Aber vielleicht verstehe ich das auch nur falsch.
Was mich irritiert, dass das Subtheme als Unterordner des contrib Themes untergebracht hast.
Ich habe das Subtheme immer in einem Order custom parallel zum Ordner contrib mit dem Original-Theme.
Ob das ein Problem ist, kann der wla sicher sagen.
Hast Du den Punkt bei der Klasse in der CSS Datei hinzugefügt?
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Guten Morgen,ich muss mich
am 13.12.2023 - 10:36 Uhr
Guten Morgen,
ich muss mich selbst verbessern.
drupal/themes/contrib/d8w3css/drupal8_w3css_subtheme
drupal8_w3css_subtheme.libraries.yml
d8w3css-subtheme-global:
version: VERSION
css:
theme:
css/d8w3css-subtheme-style.css: {}
js:
js/d8w3css-subtheme-script.js: {}
Was mich irritiert, dass das Subtheme als Unterordner des contrib Themes untergebracht hast.
Da muss ich dich verbessern, ich habe alles über Composer Installiert. Anleitung über diese >>>Seite.
Und warum er ein Unterordner im contrib Themes weiß ich auch nicht.
1. Habe ich über Composter w3css Installiert.
2. über backend (drupal) habe ich es aktiviert und als Standard aktiviert.(W3CSS Theme V2 2.0.12 (Verwaltungs-Theme)
3. Dann habe ich für Frontend (Drupal8 W3CSS Sub-theme 2.0.12 (Standard-Theme)) aktiviert.
Habe glaube ich den Fehler gefunden, warum er die css datei nicht genommen hat.
Es war unter Startseite/Verwaltung/Konfiguration/Entwicklung/Leistung
die
CSS-Dateien aggregieren
JavaScript-Dateien aggregieren
Aktiviert.
Deswegen hat er wohl alle css Datein zusammen gefügt, wenn ich das richtig verstanden habe, was mit aggregieren zu tun hat.
Werde nächste Woche in meiner Urlaubszeit, es neu aufsetzen, und dann mal gucken ob er es noch mal so installiert.
Ist ja alles eine Testseite, also nicht so schlimm, darum geht es ja, ausprobieren. :-)
gruß