Support » Allgemeine Fragen » CSS nicht mehr änderbar

  • Hallo!

    Seit einiger Zeit kann ich keine Änderungen am CSS vornehmen. Die style.css befindet sich wie immer im Child-Theme und ist korrekt verlinkt. Lokale Änderungen der Datei werden per FTP hoch geladen, und am Server ist auch definitiv die Änderung nachvollzogen.
    Doch: Die neuen, ou. geänderten Stile werden nicht verwendet!
    Mehr noch: Man kann die child-theme/style.css sogar löschen, alles bleibt beim Alten!

    Per Browser -> Entwicklertools sieht man aber, dass zum einen plötzlich die meisten Stile doppelt angezeigt werden. Es gibt nämlich mehrere Versionen der style.css. Erkennbar an angehängten Parametern: „..._child/style.css?ver=2.4.3", „..._child/style.css?ver=5.2.1„.
    Dies sah ich schon öfters und auch wenn ich nicht weiß, warum es diese Versionen gibt und wo die herkommen – solange alles funzt war es mir wurscht.

    Leider sind die so angezeigten Style Versionen alle nicht die richtigen. Die aktuelle Datei wird nicht referenziert. Auch wenn es im Quelltext so aussieht, in den Entwicklertools steht was anderes.

    Ganz seltsam dabei ist: Wieso bleibt das Layout aufrecht, welches per child-theme/style.css gesteuert wird? Selbst wenn ich die Datei lösche oder sonstwas – es bleibt alles gleich! Woher kommt das Layout, wenn nicht von meiner style.css??? Aus dem Parent/CSS kann es nicht sein, denn das sähe anders aus.

    Natürlich habe ich auch andere Browser getestet, Cache geleert, Plugins deaktiviert – alles bleibt wie es ist. Ich kann nichts mehr ändern …
    Kann auch nicht sagen, seit wann, mit welcher WP Version sich dieses Phänomen eingeschlichen hat. Denn ich habe bei keiner der Sites (ja, es tritt bei 9 Websites mit aktuellem WP auf) in letzter Zeit etwas geändert, sicher ein halbes Jahr nicht mehr. Auch die Umgebung, Plugins, nichts wurde geändert.

    Vielleicht passierte dies auch schon jemanden, und kann mir helfen?

    PS: Ein Problem, welches schon länger besteht, ist das man im Theme-Editor selbst das CSS nicht mehr sehen, geschweige denn ändern kann.

    Danke!

Ansicht von 15 Antworten - 1 bis 15 (von insgesamt 19)
  • Mit einer URL zur Website könnten wir uns das sogar anschauen.
    Ideal wäre, wenn du eine konkrete Änderung angibst (in etwa „die Überschrift auf der Seite Über uns soll in pink erscheinen, aber die CSS-Regel .entry-title { color: pink; } im Child-Theme wird nicht angewendet“).

    Im Moment kann ich nur raten und in vielen Fällen ist entweder das Child-Theme gar nicht aktiviert oder die CSS-Regel ist nicht spezifisch genug. Zu letzerem ein kurzes Beispiel:

    Auf der Webseite gibt es folgendes HTML:

    <main id="main">
      <h1 class="entry-title">
        <a href="#">Titel der Webseite</a>
      </h1>
    </main>

    und dazu folgendes CSS:

    #main h1 { color: green; }
    .entry-title a { font-weight: normal }

    Jetzt schreibst du eigene CSS-Regeln …

    h1 { color: pink; }
    .entry-title { font-weight: bold; }

    Beide CSS-Regeln werden nicht verwendet, obwohl sie korrekt eingebunden sind, da sie nicht spezifisch genug sind.

    Ob das bei dir auch so ist, kann ich nur anhand deiner Beschreibung nicht beurteilen.

    Hallo, @pixolin und danke für die Antwort!

    Es sind 9 Websites und viele geplante Änderungen, zt. einfache, aber auch gravierende.
    Ob „spezifisch genug“ weiß ich nicht, jedenfalls am localhost klappt ja auch alles, wird alles korrekt angezeigt. (Und nein, es ist keine Referenz auf Dateien am lokalen Rechner übrig geblieben.)

    Wie im 4. Absatz gesagt: Das Child muss in jeden der Fälle aktiviert sein, wie sonst würde das (früher) damit festgelegte Layout angezeigt und wie sonst würden die darin notierten Funktionen ausgeführt? Und wer hätte alle deaktiviert, wo ich alleiniger Admin bin?

    Ich vermute, die seltsame Art, einem das Bord interne bearbeiten der eigenen CSS zu verbieten, ist nun einen Schritt weiter und WP lässt nun auch keine lokal bearbeitete CSS zu. In Kombination mit dieser Versionierung (style.css?ver=5.2.1 usw. – wo diese Anhängsel jedesmal bei SEOs zur Verwirrung beitragen) ist es nun soweit, das nichts mehr geht.
    Wie gesagt, ich (Laie) vermute dies. Evtl. ist was ganz anderes mit WP passiert. Mit WP, weil mit CP passt alles nach wie vor …

    Ich vermute, die seltsame Art, einem das Bord interne bearbeiten der eigenen CSS zu verbieten, ist nun einen Schritt weiter und WP lässt nun auch keine lokal bearbeitete CSS zu.

    So entstehen wohl Verschwörungstheorien. 😀

    Niemand will dir was verbieten (obwohl es Web-Entwickler gibt, die den Theme-Editor ausschalten, um Kunden vor ihren eigenen Fehlern zu schützen) und die Community hat sich in letzter Zeit darum bemüht den Editor sicherer zu machen. Wenn ich in einem Theme eine Datei myownstyle.css hinzufüge, kann ich sie (richtig gesetzte Benutzerrechte vorausgesetzt) auch im Theme-Editor bearbeiten:

    Screenshot Theme-Editor zeigt myonwstyle.css

    Damit alleine ist die Datei aber natürlich noch nicht eingebunden. Dazu muss ich das Stylesheet im Child-Theme noch mit wp_enqueue_style() einbinden.

    Leider bist du auf meine Frage nach einer URL zur Website nicht eingegangen und ich mag jetzt auch nicht nochmal nachfragen. Vielleicht fällt noch jemand was zu deiner Beschreibung des Problems ein. Ich wünsche dir viel Erfolg.

    obwohl es Web-Entwickler gibt, die den Theme-Editor ausschalten, um Kunden vor ihren eigenen Fehlern zu schützen

    Kann sein. Ich bin kein Kunde eines solchen, sondern hier der einzige „Entwickler“.
    Wer die Bearbeitung einer einzigen Datei sperrt, weiß ich nicht. Denn es ist ja nicht der Theme-Editor als ganzes gesperrt – nur die einzig wichtige, aktive style.css lässt sich nicht laden.
    Alles andere, selbst die PHP-Dateien, welche man nur mit entsprechenden Kenntnissen anfassen sollte, lassen sich ändern.
    Auch jede andere, x-beliebige *.css lässt sich bearbeiten.
    Nur sobald jene per functions.php eingebunden wird – ist sie tabu. Warum?

    Das ist keine Verschwörungstheorie, sondern eine Frage, wer mir mit welchem Recht das bearbeiten (ja sogar das bloße ansehen!) meiner eigenen Datei verweigert. Es kann ja einen plausiblen Grund dafür geben, den man als Profi evtl. kennt?

    Bislang war mir das Bord-Interne bearbeiten eh nicht wichtig, für was hat man einen lokalen Editor und ein FTP-Prog? Aber da das auch nicht mehr geht, tauchte die oft gestellte Frage halt wieder auf. Beantworten konnte sie bisher aber keiner. Es ist eben so, WP hat das so bestimmt und fertig. Ich bin einer, der solche Bevormundungen nicht mag. So etwas kann man mit jenen machen, die bloß WP com nutzen.

    Hier gibt es auch einen Thread zum Thema, aber auch keine Antwort. Weil das bloße ausblenden des frechen Warnhinweises bringt natürlich nichts.

    richtig gesetzte Benutzerrechte vorausgesetzt

    Hm, evtl. ist da was geändert worden? Wie sollten die richtig gesetzt sein?

    PS: Ich darf die URLs zu den 9 WP und den 2 CP Sites hier nicht öffentlich bekannt geben. Ist so von der Chefetage bestimmt. Kann ich nix machen, auch wenn ich die echt triftigen Gründe kenne.
    Das aktuelle Prob betrifft aber nur WP, nicht CP.

    https://i.imgur.com/Byy2mDN.jpg

    So, nicht nur aufgrund massiver neuer Probleme ist die Diskussion um die fehlende Erlaubnis, das eigene Stylesheet on Bord zu bearbeiten, müßig. Ich wollte ja bloß endlich wieder die aktive style.css bearbeiten, egal wie – und – das WP dies auch kapiert, die Modifikation auch zeigt. Das ging bisher problemlos.

    Nun neue Probleme:
    Ohne weiters zeigt WP plötzlich: „Das aktuelle Theme ist fehlerhaft. Das Standardtheme wurde aktiviert.“ Und macht das auch tatsächlich! Die Site sieht grauenhaft aus! Was, wann warum wo fehlerhaft ist? Keine Ahnung.

    Klick auf Themes: Schock! Das child theme wurde komplett entfernt!!! Neu rauf laden des lokal erstellten und dort perfekt funktionierenden Child-Themes bringt nichts. Es erscheint:

    Beschädigte Themes
    Die folgenden Themes sind installiert, aber nicht vollständig.
    Name	Beschreibung			
    mh_magazine_child	Es fehlt ein Stylesheet.		Löschen

    Muss die Site offline nehmen, weil div. Extras, welche ich per function uo. style dazu gebaut habe nun auch weg sind – wie zb. die Credits bei den Bildern. Wenn die Site einer in dem Zustand findet, sind sofort die Abmahner da – wer ersetzt uns das (oder den Ausfall der Sponsored Posts) ? WP?

    Hallo,
    das hört sich alles sehr seltsam an.
    Ich gehe mal davon aus, dass Du geprüft hast, ob das childtheme „mh_magazine_child“ tatsächlich komplett übertragen wurde.
    Ich habe zwar so einen Fall noch nicht gehabt, hier aber trotzdem mal ein paar Ansätze:

    • in wenigen Fällen war es hilfreich, beim Übertragen per FTP mit filezilla unter „Übertragung“ und „Übertragungstyp“ „Binär“ einzuschalten.
    • WP manuell neu installieren. Wichtig: wp-config.php und .htaccess sichern:
      Info dazu
    • ich gehe mal davon aus, dass Du zumindest keine Caching-Plugins aktiviert hast

    Viele Grüße
    Hans-Gerd

    Es ist eben so, WP hat das so bestimmt und fertig. Ich bin einer, der solche Bevormundungen nicht mag. So etwas kann man mit jenen machen, die bloß WP com nutzen.

    Offensichtlich gibt es hier ein paar Missverständnisse.

    Wir versuchen hier, dir zu helfen. Niemand hier oder sonstwo in der WordPress-Community will dich bevormunden, auch nicht eine Webanwendung. Computerprogramme reagieren aber auf Fehlanwendung – das ist bei WordPress nicht anders.

    Der Verweis auf WordPress.com ist unangebracht. Deine Website wird bei einem anderen Webhoster gehostet und WordPress.com hat damit nichts zu tun. Bitte unterlasse künftig solche Vergleiche.

    … wer ersetzt uns das (oder den Ausfall der Sponsored Posts) ? WP?

    Du bekommst WordPress kostenlos und unter Ausschluss der Gewährleistung zur Verfügung gestellt. Du kannst es für deine Zwecke nutzen und an deine Bedürfnisse anpassen, bist aber selbst dafür verantwortlich. Machst du Fehler, übernimmt niemand die Verantwortung.

    Ein freundlicher und etwas professionellerer Tonfall wäre angebracht.

    Hallo @hage, vielen Dank für die Antwort!

    childtheme „mh_magazine_child“ tatsächlich komplett übertragen

    Natürlich ist es komplett, das war es ja auch seit 2013 usw.

    Geändert habe ich nur den Stil einer einzigen Überschrift. Jener wurde, zwecks Steigerung der Aufmerksamkeit eine Animation mitgegeben. Am lokalen Rechner, alles klar – live nichts.

    „Übertragungstyp“ „Binär“

    Übertragung per FTP habe ich immer „Auto“. Aber bei den FTP-Tools habe ich das nun testweise umgeschaltet – keine Änderung. Auch ein Upload via http (per Admintool des Hosters) brachte nichts.

    Die child-theme/style.css ist zwar in geänderten Zustand „oben“, bewirkt aber nichts mehr. Dies ist übrigens bei der 2ten *.css des Themes auch so – auch zb. die geänderte druck.css wird nicht mehr anerkannt.

    WP manuell neu installieren

    ja, das wird wohl nötig sein. Aber das würde gleich mit einem Relaunch verbunden.
    Anm.: Diese Nacht habe ich sowieso bei der einen Site das Theme komplett neu aufgesetzt, weil WP es ja zuvor deaktivierte und ein Standard-Theme aktivierte. Und natürlich hat WP (trotz Versprechungen) es noch nicht hinbekommen, das man beim zurückschalten auf ein zuvor bereits aktives Theme auch wieder alles an dem Platz hat, wo es hingehört.

    keine Caching-Plugins

    Definitiv nicht.
    Dies ist aber immer der erste Verdacht, wenn Änderungen nicht angezeigt werden: Irgendwas beharrt auf alte Sachen – also tu ich automatisch bei jeden Reload sowieso den Browser-Cache leeren … usw. Und so ein Plugin hatte ich noch nie oben.

    Doch mich interessiert viel mehr, warum verhält sich WP seit wann so? Ich weiß nur, das so um 2017 das interne editieren der aktiven *.css verboten wurde. Warum?
    Auch weiß ich nicht, für was diese (virtuellen?) CSS-Versionen gut sein sollen?

    Danke!

    Ich weiß nur, das so um 2017 das interne editieren der aktiven *.css verboten wurde.

    Das stimmt nicht. Du kannst auch das Stylesheet eines aktiven Themes im Theme-Editor bearbeiten.

    Auch weiß ich nicht, für was diese (virtuellen?) CSS-Versionen gut sein sollen?

    Das hat mit dem Browser-Cache zu tun. Das Stylesheet wird im Browser zwischengespeichert. Wie lange die zwischengespeicherte Version gültig ist, kann im HTTP-Header angegeben werden – üblicherweise legst du das in der .htaccess mit dem Modul mod_expires an, z.B. als
    ExpiresByType text/css "access plus 1 year" Der Browser weiß dann, dass er diese Datei erst in einem Jahr erneut laden muss und kann die Webseite damit schneller aufbauen.

    Damit Änderungen trotzdem direkt umgesetzt werden können, hängen Cache-Plugins eine Versionsnummer an die Datei. Der Browser gleicht das ab, merkt dass er nicht mehr auf dem neuesten Stand ist und lädt die neue Version. (vgl. https://stackoverflow.com/a/7671208)

    Dieser Beitrag erklärt es auch nochmal (auf Englisch):

    CSS Changes don’t show up

    @pixolin

    Computerprogramme reagieren aber auf Fehlanwendung

    ja, sollen sie auch. Aber:
    1.) da wäre halt eine Fehlermeldung hilfreich. (ok, was aber mangels Fehler schwer ist)
    2.) nicht lokal so, live anders reagieren (bei gleicher Konfig/Umgebung)

    Aber WP wird einen Grund haben, das (interne (+ nun auch externe)) editieren der Stile zu verbieten; Die CSS in den Customizer des Themes zu verlagern (wenn es den Abschnitt überhaupt gibt!)
    Nur warum sagt einem das keiner?

    Vergleiche deswegen, weil wenn ich WP selber hoste, will ich damit tun, was ich will. Nicht was WP will. Und wenn WP etwas ändert, könnte eine so leistungsfähige SW (deren Entwickler) dies dies doch auch vorher mitteilen.

    Machst du Fehler, übernimmt niemand die Verantwortung

    Doch ich. Nur: Wo kein Fehler meinerseits ist, muss ich die Ursache für das Fehlverhalten der Software woanders suchen.
    Und es kann nicht mein Fehler sein, wenn es bei (fast gleichen) CP- Installationen und am XAMPP klappt.

    Ich habe die WP-Eigenmächtigkeit, ein fehlerloses Theme grundlos zu deaktivieren eh wieder ausgebügelt. Eine Nacht ging drauf, alles wieder herzustellen.

    nicht lokal so, live anders reagieren (bei gleicher Konfig/Umgebung)

    Das passiert in einigen Fällen, etwa wenn dein Betriebssystem die Groß-/Kleinschreibung anders bewertet als das Betriebssystem des Webservers. Ich meine, ich hätte dir mal in einem anderen Zusammenhang Local by Flywheel empfohlen? Das Programm virtualisiert eine Linux-Umgebung, die mehr dem Betriebssystem des Zielservers entspricht.

    Aber WP wird einen Grund haben, das (interne (+ nun auch externe)) editieren der Stile zu verbieten; Die CSS in den Customizer des Themes zu verlagern (wenn es den Abschnitt überhaupt gibt!)
    Nur warum sagt einem das keiner?

    Weil es, bei allem Respekt, Blödsinn ist.
    Niemand „verbietet“ dir das Bearbeiten von Stylesheets.

    Da Änderungen in einem Theme beim nächsten Update überschrieben werden, gibt es im Theme-Editor einen freundlichen Hinweis, dass eine Änderung dort nicht nötig ist und statt dessen eigene CSS-Regeln im Customizer unter Zusätzliches CSS eingetragen werden können. Das gilt für jede Website mit jedem beliebigen Theme und erspart unter Umständen (genau dann, wenn ausschließlich Änderungen am Styleseet vorgenommen werden sollen) auch das Anlegen eine Child Themes.

    Wenn du generell im Theme-Editor keine Änderungen vornehmen kannst, liegt das an der Serverkonfiguration. AnwenderInnen haben sich immer wieder durch unbedachte Änderungen an Templates komplett aus ihrer WordPress-Installation ausgesperrt und deshalb haben die Entwickler einen Mechanismus eingeführt, der bei fatalen Fehlern des PHP-Codes ein Wiederherstellung der ursprünglichen Version erlaubt. Das setzt aber voraus, dass der Server Loopbacks unterstützt. Unterstützt der Server das nicht, werden Änderungen untersagt – zum Schutz der AnwenderInnen!

    Bei einem lokalen Webserver ist es gut möglich, dass du deshalb keine Änderungen vornehmen kannst. Das ist aber nicht tragisch, da du über den Datei-Explorer auf die Dateien zugreifen und sie mit einem Programmier-Editor bearbeiten kannst, was sowieso die bessere Wahl ist.

    Vergleiche deswegen, weil wenn ich WP selber hoste, will ich damit tun, was ich will.

    Das kannst du doch. Wenn du Fehler produzierst, solltest du aber nicht erwarten, dass alles so läuft, wie du es dir vorstellst. Das hat mit Bevormundung nichts zu tun.

    Wo kein Fehler meinerseits ist, muss ich die Ursache für das Fehlverhalten der Software woanders suchen.

    Es geht hier im Forum nicht um Schuldzuweisungen.

    Ich habe die WP-Eigenmächtigkeit, …

    Du hast da ein sehr merkwürdiges Verständnis, wie Webanwendungen funktionieren.

    Solltest du weiterhin „Eigenmächtigkeit“ und „Bevormundung“ unterstellen, schließe ich den Thread.

    @pixolin
    Nachtrag zum Post bez CSS im Theme Editor bearbeiten:

    Das stimmt nicht. Du kannst auch das Stylesheet eines aktiven Themes im Theme-Editor bearbeiten.

    Nein, kann ich nicht und bin da nicht der einzige. s. Bild

    Danke für die Erklärung bez. CSS Versionen. Denke, ich verstehe das so halbwegs und so ist das ok, es hat einen guten Grund und pasta.

    Warum angezeigt wird, dass es keine Notwendigkeit gibt, das Stylesheet dort zu ändern, habe ich ausführlich erklärt. Bitte lies das nochmal nach.

    Wieso ein Stylesheet ohne Inhalt angezeigt wird, kann ich aus der Ferne nicht beurteilen. Vielleicht hast du einfach eine leere Datei eingefügt (was ja auch den Hinweis zum „Beschädigtem Theme“ erklären würde). Vielleicht hast du auch anschließend ein weiteres Stylesheet erstellt … und woanders hinkopiert. Solche Dinge passieren, vor allem wenn man zu lange „vor der Kiste hockt“. Manchmal ist ein Spaziergang um den Block besser als jeder Versuch, den Fehler zu debuggen. 😉

    Local by Flywheel empfohlen? … Linux-Umgebung, die mehr dem Betriebssystem des Zielservers entspricht.

    Hm, ja, kann sein, weiß ich nicht mehr. Habe eine Linux Kiste hier, aber als Windows User bin ich zu faul zum umlernen, schimpfe lieber weiter auf Win.

    einen freundlichen Hinweis,

    naja, einen Hinweis sollte man wegklicken können. „Ok, verstanden ich weiß, was ich tue“ und schon sollte mein CSS dort sichtbar sein. So aber ist es ein Verbot.

    erspart … eine Child Themes

    Die lege ich immer an. (Es bleibt ja auch nicht beim bloßen Stylen, auch Funktionen und andere Templates sind angepasst)

    Und ich bin halt aus uralten Tagen gewohnt, ein Stylesheet zu haben, das lokal bearbeitet wird und dann hoch damit. Heute ist das halt anders, es gibt so viele CSS Dateien in einer typ. WP Installation, auch inline Styles sind wieder in Mode. Ok, isso, muss ich akzeptieren.
    Aber meine Layout-„Zentrale“ soll eben die eine einzige style.css im Child sein und bleiben. Wenn das nicht mehr geht und man nun auch noch im Customizer herumfrickeln soll, wird das immer unübersichtlicher.

    Wenn du generell im Theme-Editor keine Änderungen vornehmen kannst

    Ne, wie gesagt, nur die *.css lassen sich nicht anzeigen/ändern.
    Das mit der Sicherheit vor dem typ. Anwender ist schon gut so. Nur ich bin kein normaler Anwender 😉

    Am lokalen XAMPP geht alles, und auch beim Hoster gibts nirgends merkbare Einschränkungen. Klar, die Konfig der Server kann nicht 100% gleich sein, denn dort werklen Profis und hab halt andere Limits usw. im XAMPP gesetzt.
    Nur so ein Unterschied ist lt. Hoster nicht, das es dieses Problem mit der nicht angenommen Änderung der Stile erklärt.

    keine Notwendigkeit gibt, das Stylesheet dort zu ändern

    ja, eh nicht. Aber wenigstens ansehen wollte ich es, um zu sehen ob die (lokalen, hochgeladenen) Änderungen eh auch oben sind.

    Wieso ein Stylesheet ohne Inhalt angezeigt wird, kann ich aus der Ferne nicht beurteilen.

    Ich nicht mal aus der Nähe. Aber leer ist die definitiv nie gewesen. Auch sonst ist nie eine leere Datei oder eine functions.php mit Fehler drin gewesen.

    Spaziergang um den Block

    Gute Idee!

    Danke!

    Local by Flywheel gibt es auch für Windows. Linux wird als virtualisiertes Betriebssystem eingebunden.

    Wieso ein als Hinweis gekennzeichneter Text mit Überschrift „Hast du das gewusst?“ von dir als Verbot interpretiert wird, erschließt sich mir nicht. Ehrlich gesagt gehlt mir aber auch ein wenig die Zeit, um mit dir über die Unterschiede zwischen Hinweisen und Verboten zu plaudern und deiner ursprünglichen Frage hilft es auch kaum weiter.

    Aber wenigstens ansehen wollte ich es, um zu sehen ob die (lokalen, hochgeladenen) Änderungen eh auch oben sind.

    Das kannst du auch über die Entwicklertools deines Browsers abklären.

Ansicht von 15 Antworten - 1 bis 15 (von insgesamt 19)
  • Das Thema „CSS nicht mehr änderbar“ ist für neue Antworten geschlossen.