Cassiopeia - override?

  • Ich teste in den Vorabversionen von Joomla 4 die Arbeitsabläufe und die Möglichkeiten.


    Neu ist im Template Cassiopeia eine CSS Datei "template.min.css". Um den header, speziell .container-header {...} , anpassen zu können, müsste für die Datei template.min.css ein custom css file angelegt werden. Dies ist in den bis 22. Juli 2018 publizierten Versionen nicht möglich.


    Gibt es eine andere/bessere Möglichkeit, die ich übersehe?

    Dank für guten Rat

    jhk

  • Guten Tag und danke Christine, die Vorteile der user.css sind mir geläufig, in J3 Sites nutze ich diese Möglichkeit.


    In meiner user.css habe ich .container-header entsprechend angepasst. Doch in der Datei template.min.css ist neben andere "Duplikaten" auch .container-header enthalten. Template.min.css wird später als user.css eingelesen.


    "user.min.css" ist nicht vorgesehen. Ich könnte template.min.css etwa durch umbenenne deaktivieren, weiss aber nicht welche Kollateralschäden ich mir dann einhandle.


    Mit dem Inspektor komme ich auch nicht auf eine durch Updates nicht überschreibbare Lösung.


    Gruss jhk

  • Passe die index.php so an, dass die user.css zum Schluss geladen wird, dann sollte alles überschreibbar sein.

    BTW: Ich würde auch beim J4-Standardtemplate noch nicht produktiv mit arbeiten. Die Gefahr, dass sich noch was ändern wird, ist groß. Ist alles noch im Alpha-Stadium.

  • Tom, mit Deinem Vorschlag habe ich doch auch experimentiert. Die doofe Datei template.min.css wird durch eine noch nicht identifizierte Anweisung eingefügt.

    Natürlich arbeite ich nur im Geheimenl. Wer das Problem analysieren will, der installiere eine aktuelle nightly built Version von J4. Mit einer Datei user.css ändere man .container-head { ...}. Etwa keine Hintergrundfarbe, weg mit der "Welle" an der unteren Längsseite und statt "Cassiopeia" eine eigenes Logo.

    Aber diese Änderungen werde durch template.min.css wieder egalisiert. Mit dem Code Inspektor kann man dort TEMPORÄR das gewünschte Ergebnis erzielen. Nix für eine pflegeleichte Ewigkeit.

    Jörg

  • Die user.css wird automatisch durch bereits vorhandene Zeile geladen

    Code
    1. HTMLHelper::_('stylesheet', 'user.css', array('version' => 'auto', 'relative' => true));

    Muss man also nur im css-Ordner anlegen.


    Die template.min.css wird geladen durch

    Code
    1. HTMLHelper::_('stylesheet', 'template' . ($this->direction === 'rtl' ? '-rtl' : '') . '.css', ['version' => 'auto', 'relative' => true]);

    Das bescheuerte an Joomla 4 ist, dass bei Verwendung von HTMLHelper automatisch und nicht deaktivierbar (soweit ich bisher sehe) immer die .min gezogen wird, wenn eine vorhanden ist, selbst, wenn man explizit die nicht-min haben will (wie in letzter Code-Zeile ja auch zu sehen). Haben sich halt auch die schlauen Modernisierer durchgesetzt und verursacht mir Tage Arbeit mit vielen, meiner Erweiterungen, wo man wunschmäßig auch nicht-min laden kann zum einfacheren debuggen.


    Lediglich im Joomla-Debug-Modus wird die nicht-min gezogen, was aber keine Option ist, weil der einem die Seite mit diversem Anderen zumüllt.


    Wiederhole mich: Casseiopaia ist weit davon entfernt ein brauchbares Lerntemplate zu sein wie Protostar das war.

  • Re:Later, Du hast den Wald von Bäumen gelichtet und Schuppen von den Augen genommen! Danke.


    Was Du hier und an anderen Stellen zu Superschlauen und Bescheuerten J4 Aktivisten äusserst, trägt Dir zusätzliche 100 Punkte ein. Das Backend von J3 bietet ein gute und übersichtliche Werkzeugkiste, dagegen ist das Backend von J4 verwurdackelt wie bei Hempels unterm Sofa!


    Vorhersage: Cassiopeia / J4 wird noch zu vielen Diskussionen vergnüglichster Artführen.


    Jörg

  • Meine Kommentare iImmer unter der Einschränkung, dass ja noch gearbeitet wird. Das Backend-Template ist klar als WIP kommuniziert ("Work In Progress"). Trotzdem verwchwinden Sachen, bei denen man nicht weiß, ob sie jetzt absichtlich plötzlich weg sind oder versehentlich ;-) Dass bspw. "Erweiterungen" links verschwunden sind, dann aber unter "System" > "Manage" die Module nicht dabei sind. Rätsel ;-) Hab mir da einen Wolf gesucht, um einen PR zu testen ;-)


    Casseiopaia. Ja gerne als Zusatztemplate, so Status wie Beez, aber ist halt zu viel verbaut, als, dass man irgendein brauchbares Tutorial für Joomla-Template-Anfänger schreiben könnte oder es als Basis eines Tutorials nehmen könnte.

  • Nachdem re:later den entscheidenden Hinweis gegeben hatte, ist für mich die Anfrage erledigt.


    Ich werde im Moment nicht mehr Zeit auf das Design des Headers verwenden; das wird Anfang 2019, wenn J4 aktuell ist und Sites umgezogen werden können, dann hoffentlich einfacher sein.


    Danke an alle Diskutanten!

    Jörg

  • Hallo Jörg,


    also wegen dem header habe ich folgendes in die user.css gegeben:


    Code
    1. .container-header {
    2. background-color: green;
    3. background-image: none;}

    Hintergrund: ev. transparent - na egal. Ist ja nur beispielhaft.


    Wegen der "Welle":

    Code
    1. .header-shape-bottom {
    2. display:none;
    3. }

    wegen dem Logo: Kann man unter Stile reingeben. Aber all das wirst Du ja schon gesehen haben.


    Allerdings habe ich es wieder runter geschmissen, weil aus unerklärlichen Gründen das Bild bzw. der Header in die "Höhe" gezogen wird (auch wenn das .jpg nur z.B. 100px Orig ist).


    Mir ist das alles auch noch viel zu viel undurchschaubar ..... Auch das backend ....


    Liebe Grüße

    Christine


    Edit: achso, hat sich wohl erledigt & bin schon wieder weg.

  • Hallo Christine!


    Danke, dass Du Dich nochmals bemüht hast.


    Du kannst in user.css in .container-header {...} angeben was Du willst. Dieser .container-header wird vom zur Zeit downloadbaren nightly build Code IMMER überschrieben durch die Datei template.min.css.


    Falls man template.min.css etwa durch Umbenennen deaktivieren würde, dann "zerreisst" es das Grid.


    Fazit: Design ist bei Cassiopeia noch nicht möglich.


    Für work flow, Konsistenz, etc. im backend sollte ein Jurist als Berater hinzugezogen werden. So ist es z.B. ein Vergnügen Ferdinand Kirchhof, dem Vizegerichtspräsidenten des Buntenverfassungsgerichts bei den Urteilsbegründungen zu hören. Da passt ein Stein auf den anderen.


    Gruss Jörg

  • Hallo Jörg,

    Du kannst in user.css in .container-header {...} angeben was Du willst. Dieser .container-header wird vom zur Zeit downloadbaren nightly build Code IMMER überschrieben durch die Datei template.min.css.

    na wunderbar. Um eine Überschreibung zu vermeiden, hatte ich ja user.css erstellt. Ist dann sinnlos.

    (Eine template copy macht m.M. hier keinen Sinn - wegen der doch laufenden Änderungen, bug releases usw).

    Wollte auf alpha-5 updaten, funktionierte nicht. Kam auch Meldung (weiß nicht mehr nach welchem Klick)
    Warning

    Update: Could not open update site #1 "Joomla! Core", URL: https://update.joomla.org/core/test/next_major_list.xml


    In Moment gebe ich es auf. Wollte halt so gut (oder nicht gut) testen, um ev. helfen zu können oder so. Beende hiermit :-)


    Liebe Grüße

    Christine

  • Zu cassiopeia.

    template.min.css gibt es doch ebenso in protostar? Das ist nicht neu.


    Die template.min.css wird ja normalerweise aus der template.css generiert, daher sehe ich keinen Sinn darin, die template.min.css irgendwie zu bearbeiten.

    Ich habe gerade die template.css manipuliert (die Welle im header herausgenommen und ein paar Border eingesetzt), dann die template.min.css generiert (minifier) und alles funktioniert wie erwartet. Alles was ich ändern wollte ist unmittelbar sichtbar, genau wie beim protostar.


    Wobei das natürlich auch nicht gescheit ist, man arbeitet auf den scss-Dateien, kompiliert die so dass eine template.css entsteht und die wird zur template.min.css. (minifier), nur dass jetzt mit SASS kompiliert wird und nicht mehr mit LESS. Das wird aber jetzt in der Testphase immer überschrieben und ist nicht empfehlenswert.


    Dann habe ich eine user.css erzeugt und ein paar Befehle rein geschrieben, das funktioniert ebenfalls wie gewohnt.

    Zitat

    Du kannst in user.css in .container-header {...} angeben was Du willst. Dieser .container-header wird vom zur Zeit downloadbaren nightly build Code IMMER überschrieben durch die Datei template.min.css.

    Die nightly build überschreiben deine template.css und template.min.css aber keine user.css, daran hat sich ncihts geändert.

    Es könnte aber sein dass der Installer die user.css löscht. Das habe ich jetzt noch nicht probiert. Es wäre ein Bug und den solltest du melden,. Kannst du das nachprüfen?


    Zitat

    Für work flow, Konsistenz, etc. im backend sollte ein Jurist als Berater hinzugezogen werden. So ist es z.B. ein Vergnügen Ferdinand Kirchhof, dem Vizegerichtspräsidenten des Buntenverfassungsgerichts bei den Urteilsbegründungen zu hören. Da passt ein Stein auf den anderen.

    Das verstehe ich nicht? Was hat der Richter mit dem in Arbeit befindlichen Backend der J v4 zu tun?

    Wobei mit dem aktuellen Stand des Backend Templates noch niemand glücklich ist .. Work in Progress ...

  • template.min.css gibt es doch ebenso in protostar?

    Nein. Und es wird auch nicht zwangsweise die min geladen, wenn eine vorhanden ist/wäre.

    dann die template.min.css generiert (minifier)

    Wie gesagt Joomla 4 lädt IMMER automatisch die min, wenn eine vorhanden ist. Und zwar im GANZEN System, nicht nur in Casseiopaia, wenn man die eigentlich praktische HTMLHelper-Methode (ehemals JHtml) verwendet.

    Wenn ich etwas an einer CSS/JS-Datei ändere, dann möchte ich erst unminifiziert testen und alles fertig haben, bevor ich sie dann minifiziere und dann explizit das Laden der min anfordern. Ich muss also erst die min durch Löschen/Umbenennen (lokal und Server) stilllegen, damit Joomla sie nicht mehr automatisch lädt, sondern meine nicht-min lädt, dann meine Änderungen machen, dann eine neue min erzeugen. Das hat nichts mit praktikabler bzw. flexibler Arbeitsweise zu tun, sondern ist hingemünzt auf den Workflow einiger Leute, die mit entsprechenden Arbeitsumgebungen arbeiten.

    nur dass jetzt mit SASS kompiliert wird und nicht mehr mit LESS

    Und das Casseiopaia-SASS ist so aufgebaut, dass es nicht fehlerfrei mit stinknormalen, voll BOOTSTRAP-4-fähigen Compilern kompiliert werden kann (schmeißen Unmengen Fehler). Nicht jeder WILL (ich) oder kann (ich) mit irgendwelchen node-Befehlen (so die Empfehlung auf GitHub) hantieren. Vollkommen übertriebener Aufwand, nur um eine css-Datei zu generieren. Auch hier: "hingemünzt auf den Workflow einiger Leute, die mit entsprechenden Arbeitsumgebungen arbeiten."

  • Re:Later das mit dem neuerdings automatischen Erzeugen der .min. habe ich irgendwie verdrängt, weil ich immer .min. verwende und den Degug modus an habe. Aber so oder so - etwas in den minified Dateien zu bearbeiten ist falsch.


    Jedenfalls stimme ich völlig überein dass die Entwicklung im Moment in eine Richtung geht, mit der "normale" Leute nichts mehr anfangen können (ich zum Beispiel, finde nichts mehr). Und es scheint, dass es eine Rückkehr zum normalen jQuery Bootstrap4 gibt - das wär doch was.


    .

  • den Degug modus an habe

    Für mich halt keine Option, da auch der eigenen Kram lädt, den ich beim Rumbasteln nicht will. Ist wie der Offline-Modus, der mit realen Bedingungen nix zu tun hat.

    etwas in den minified Dateien zu bearbeiten ist falsch

    Ja, klar, sowieso!!!!

    dass es eine Rückkehr zum normalen jQuery Bootstrap4 gibt

    Das hätten sich die Erneuerer dann aber selbst eingebrockt. Wer eine groß aufgezogene Baustelle so unsystematisch fertigstellt, hier Gefrickel, dann wieder da Gefrickel, das noch dazu kein anderer der "altmodischen" (meine Formulierung, aber häufiger derartig arrogantes Gepöbel zu lesen) Handwerker mehr versteht, weil unklar, ob Provisorium oder nicht oder was eigentlich rauskommen soll, dann ist man am Ende eben allein und die anderen Handwerker und Hiwis fegen nur noch.

  • Hallo,


    zunächst mal: Re:Later & firstlady : unterbreche ungerne Eure wissenschaftliche Diskussion

    Zu den Themen: "CSS compilieren usw" kann ich more bzw. less nichts beitragen :-)


    Thread ist zwar auf erledigt, dennoch möchte ich das hier nicht im Raum stehen lassen:

    Du kannst in user.css in .container-header {...} angeben was Du willst. Dieser .container-header wird vom zur Zeit downloadbaren nightly build Code IMMER überschrieben durch die Datei template.min.css.

    Wie in einem vorigen post geschrieben, gab es bei mir Probleme auf alpha5-dev abzudaten.

    Um eben obiges zu testen.


    Nun denn: es ist vollbracht - dazu Danke an Re:Later für seine Tipps beer


    Zunächst mal ist es wichtig, diesen sogenannten "Update Channel" richtig einzustellen:



    Leider gab es dann Ajax etc. Probleme. Siehe hier: https://github.com/joomla/joomla-cms/issues/21160. Das update ging dennoch nur mit Trick:


    Wie ganz unten von Re:Later angegeben, habe ich diesen File: ausgetauscht.

    System mag den File nicht. Also: restore_finalisation.php

    Na ja, dann mit ein (wenig) Geduld - System rödelte dahin - ging das Update durch.


    Und: die angelegte user.css wurde nicht überschrieben: :)


    Liebe Grüße

    Christine