Problem mit Child Theme erstellen

  • Hallo,
    ich wollte mir für den Theme iFeature Version 4.5.33 einen Child Theme erstellen, weil sich leider bei der neuen Version 5.0.7 das Design des Themes ändert. Ich habe auch die style.css so umgeändert, wie sie sein soll und wenn ich Child Theme hochlade, wird es auch auf der Website unter Themes angezeigt. Wenn ich es aber aktiviere, wird mir die Aktualsierung des ursprüglichen Themes immernoch angezeigt. Wenn ich den ursprünglichen Theme dann aktualsiere und auf den Child Theme wechseln will, dann sieht der Child Theme genauso aus, wie der ursprüngliche aktualisierte Theme, aber das möchte ich ja nicht.

    Meine Frage ist jetzt: Wie kann ich den ursprüglichen Theme aktualsieren, ohne das sich der Child Theme auch ändert.

    Es wäre sehr nett, wenn ihr mir helfen könntet!

    Besuche uns im Web unter: HighTechX.de

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • AW: Problem mit Child Theme erstellen

    Wenn sich im Parent-Theme nach dem Update etwas ändert, musst du es über das Child wieder so anpassen wie du es willst.

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • probiere es aus ;-)

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Bei einem child-theme wird doch geprüft was vorhanden ist und was nicht. Alles was vorhanden ist, hat Vorrang.

    Heißt: Hat man im chil-theme eine eigene style.css, wird diese benutzt. Das funktioniert mit fast allen Dateien. Ausnahme functions.php. Ändert sich das Basistheme, dann bleibt doch alles beim alten. Solange man die Änderungen im eigenen Design vorgenommen hat und nicht im Basistheme.

    Wichtig ist aber der Kopf der style.css

    Code
    [COLOR=#333333]/*[/COLOR]
    Theme Name: Twenty Ten Child
    Theme URI: Deine URL
    Description: Child theme für das Twenty Ten Theme
    Author: Dein Name
    Author URI: Deine URL
    Template: twentyten
    Version: 0.1.0
    [COLOR=#333333]*/[/COLOR]

    Nur so weiß ja WP das es ein child und wo das original ist. Und entweder man copiert alle styles der originalen hier hinein, oder import sie. Nimmst Du die Variante 1 (alles hineinkopieren) dann gehst Du sicher, das sich am Aussehen nichts ändert, wenn das Basistheme ändert.

    Ist doch richtig, maxe?

  • Hmmm. Eine Child Theme ist ja eine ganz einfach Sache, aber irgendwie möchte es bei mir einfach nicht gelingen...
    Nach dem Update des Parent-Theme sieht das Child-Theme genauso aus, obwohl es die "ältere" style.css hat. Irgendwie wird die alte style.css durch die neue des Parent-Themes überschrieben. Was kann ich denn machen?

    Besuche uns im Web unter: HighTechX.de

  • Die alte style.css wird nur dann überschrieben, wenn Sie im Basistheme-Ordner liegt. Niemals aber im child-Ordner

    Themes - TwentyTen
    Themes - TE_Child

    Angenommen Du hast TE_Child erstellt. Dann musst Du darin eine style.css anlegen wie oben aufgeführt. Aufpassen, das der Name unter Template auch wie oben gezeigt eingetragen wird (Nicht "TwentyTen" oder "twenty ten"). Genau diese style.css im Ordner TE_Child kannst Du nach Deinen belieben ändern. Also alle Eintragungen darin sind DEIN STYLE.

    Kommt es nun zu einem Update von twentyten, dann werden nur die Dateien im Ordner "Themes - TwentyTen" geändert. Da als Theme in WP aber "Themes - TE_Child" gewählt wurde, und infolge dessen diese style.css aktiv ist, ändert sich am Aussehen nichts!

    Ausnahme: Im Theme werden die Styles neu benannt und Du hast keine eigenen .php-Dateien wie zB page.php, in denen ja geregelt ist, welche Style-Klasse genutzt wird. Also ändert sich beispielsweise ".header-img" in ".header-bild", dann sind Deine Änderungen natürlich nicht mehr gültig. Dann aber dürfte gar kein Style definiert sein, denn die geupdatete style.css würde nur dann zum Zuge kommen, wenn diese importiert werden würde.

  • Ok,
    also muss in der Style.css nichts drin stehe, denn kann leer sein und ich muss einfach nur das nach der Vorlage da von dir hineinschreiben?

    Dann erstelle ich den Ordner des Child Themes der in das FTP Verzeichnis geladen werden soll. Muss in den Ordner noch irgendwas anderes drin sein oder lediglich nur die Style.css?

    Besuche uns im Web unter: HighTechX.de

  • [FONT=lucida console]Mir dünkt Du hast nicht wirklich eine Vorstellung wie das child-theme funktioniert?


    Noch mal: erstelle einen Ordner, erstelle darin eine Datei namens style.css, füge obigen Code ein. Den Ordner lädst Du nun in den Themes-Ordner. Daraufhin wird Dir das im Backend unter Themes auch angezeigt.

    Jetzt sieh Dir die Seite an. Diese sollte total kaputt aussehen. Alles wird einfach untereinander geschrieben.


    Möglichkeit 1:

    Code
    <link href="../twentyten/style.css" type="text/css" media="screen" />


    Möglichkeit 2:

    Code
    @import url("../twentyten/style.css");


    Möglichkeit 3:

    Alle styles kopieren und in die neue style.css einfügen (präferiere ich persönlich).


    Bei Möglichkeit 1 und 2 kannst Du nun alle styles die Du ändern willst eintragen mit den neuen Werten, bei Möglichkeit 3 kannst Du die gewünschten Styles einfach abändern.

    Vorteil bei Lösung 3: Auch vorher unveränderte styles, welche nun durch ein Update geändert wurde, bleiben so wie sie ursprünglich waren. Dagegen wird bei Möglichkeit 1 und 2 die bisher nicht abgeänderten styles eventuell verändert dargestellt und wirken sich somit auf das Design aus.


    [COLOR=#b22222]!ACHTUNG![/COLOR] Du benötigst natürlich das Theme TwentyTen, oder Du musst unter Template das entsprechende Theme in Deiner Installation (was DU ändern möchtest) entragen![/FONT]

  • Nein ich verstehe das schon...
    Bei Möglichkeit 3 (genau das möchte ich wissen ;)), welche Styles muss ich da einfügen, also wie heißen die? Sorry die Frage...

    Besuche uns im Web unter: HighTechX.de

    Einmal editiert, zuletzt von TheStriker (14. Januar 2013 um 21:12)

  • [FONT=lucida console]Möglichkeit 3:

    [COLOR=#b22222][size=14]Alle styles[/SIZE][/COLOR] kopieren und in die neue style.css einfügen (präferiere ich persönlich).[/FONT]

    Heißt: Originale styles.css aus twentyten öffnen, und einfach alles nach dem header-Eintrag (also der Kommentierung zwischen "/*" und "*/") kopieren und in der neuen, eigenen styles.css einfügen.

  • Ok, habe das jetzt auch so gemacht...
    Child Theme wird mir auch angezeigt und alles ist schön. Ich möchte ja jetzt den richtigen Theme updaten, damit ich auf der neusten Version bin, aber somit ändert sich ja beim neuen Theme das Design.
    Wo muss ich das Update druchführen? Beim Child Theme oder beim Parent Theme?

    Besuche uns im Web unter: HighTechX.de

  • Das Update wird Dir doch eh von WP angezeigt. Durchgeführt wird dies immer im Parent-theme! Deine Änderungen die Du im child-theme vorgenommen hast bleiben erhalten. Zumindest sofern die Änderungen nur die style.css betreffen. Gleiches gilt für die Dateien, die Du ebenfalls anpasst und in Deinem child-theme hinterlegst (bspw page.php). Auch diese Änderungen bleiben erhalten. Bei Nutzung des child-themes werden ja nur die Dateien die nicht vorhanden sind aus dem Parent-theme genommen.

  • Wenn ich das richtig sehe, ist das aber der Order des normalen Themes...

    So wie im Anhang sollte die Struktur aussehen.

    '2012neu' beinhaltet wie man sehen kann nur die style.css, da es mein child ist. Das parent-theme ist in diesem Fall "twentytwelve". Bei einem Update wird das aktualisiert, der Ordner "2012neu" wird aber nicht angerührt.

  • Wenn ich das richtig sehe, ist das aber der Order des normalen Themes...

    So wie im Anhang sollte die Struktur aussehen.

    [ATTACH=CONFIG]6653[/ATTACH]

    '2012neu' beinhaltet wie man sehen kann nur die style.css, da es mein child ist. Das parent-theme ist in diesem Fall "twentytwelve". Bei einem Update wird das aktualisiert, der Ordner "2012neu" wird aber nicht angerührt.

    Ja genau, so ist es auch. Das ist der Parent Theme vor und nach dem Update. Nur nach dem Update ändern sich einige Inhalte im Ordner. Ich werde das jetzt alles nochmal neu probieren und mich dann wieder zurückmelden!

    Besuche uns im Web unter: HighTechX.de

  • Nur nach dem Update ändern sich einige Inhalte im Ordner.

    Ja, das ist dann in Ordnung! Das ist aber genau das was ich Dir schon geschrieben habe, das es manchmal zu größeren Änderungen kommt, die dann durch eine simple Änderung der style.css nicht abgefangen werden können!

    Du kannst Dir behelfen, indem DU einfach das Theme nach dem Update nimmst und dort die Änderungen vor nimmst. Du kannst auch das komplette Theme umbenennen. Also den Ordner den Zusatz "_own" geben und dann in der style.css ebenso das Theme in "~_own" umbenennen. Damit ist es ein eigenständiges Theme und bekommt keine Änderungen mehr!


    Bei Dir ist wahrscheinlich das eingetreten:

    Zitat

    [COLOR=#3E3E3E]Ausnahme: Im Theme werden die Styles neu benannt und Du hast keine eigenen .php-Dateien wie zB page.php, in denen ja geregelt ist, welche Style-Klasse genutzt wird. Also ändert sich beispielsweise ".header-img" in ".header-bild", dann sind Deine Änderungen natürlich nicht mehr gültig. Dann aber dürfte gar kein Style definiert sein, denn die geupdatete style.css würde nur dann zum Zuge kommen, wenn diese importiert werden würde.

    Ich empfehle Dir Dich wirklich noch einmal intensiv mit dem Thema child-theme auseinander zusetzen.[/COLOR]

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!