Antworten auf deine Fragen:
Neues Thema erstellen

Erledigt - Frage zu Childthemes und Plugins

splatter

°°°°°°°°°°°°°°

Servus zusammen,

Ich hab mich in den letzten Tagen intensiv mit Wordpress und der Theme-Anpassung beschäftigt.

Den Umgang und den Sinn von Child-Themes hab ich einigermaßen verstanden, und das funktioniert auch alles recht zufriedenstellend.

Gibt es auch so etwas wie Childplugins? Wenn ich z.B. den css code im Pluginordner an mein design anpasse und dieses aktualisiert wird wären meine Änderungen ja wieder weg.
Verstehe ich das richtig?
Muss ich die css Datei des plugins auch in die Child-Theme Css Datei importieren?
Diese wird langsam endlos lang und unübersichtlich.
Muss man den gesammten Inhalt einer css einfügen oder reicht es die Klassen und Ids einzufügen die man anpassen/überschreiben möchte?

Manche Anpassungen der css werden nicht übernommen, woran könnte das liegen?

Viele Fragen kurzer Sinn ;)

Gruß
splatter
 

lachender_engel

Aktives Mitglied

Gibt es auch so etwas wie Childplugins?
Nein, gibt es nicht.
Wenn ich z.B. den css code im Pluginordner an mein design anpasse und dieses aktualisiert wird wären meine Änderungen ja wieder weg.
Verstehe ich das richtig?
Ja.
Muss ich die css Datei des plugins auch in die Child-Theme Css Datei importieren?
Nein, Du überschreibst in der css Deines Child-Themes nur die CSS-Angaben des Plugins.
 

splatter

°°°°°°°°°°°°°°

Sargas

Mod | Forum

Teammitglied
PSD Beta Team
Du schreibst in die CSS des Child-Themes nur das rein, was du ändern willst. Die ganze Datei der Vorlage brauchst du nicht übernehmen.

Wenn Anpassungen nicht übernommen werden liegt es meistens daran, dass es nicht richtig angegeben wurde. Such am besten die Stelle, die du ändern willst in der CSS deiner Vorlage kopier diese rüber und ändere dann die Werte.
 

FlashZange

Nicht mehr ganz neu hier

Wie würde dieser Weg denn aussehen?

In der functions.php deines child-Themes muss was in der Richtung rein:
PHP:
function parentStyles() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
}
add_action( 'wp_enqueue_scripts', 'parentStyles' );
Schau mal in der functions.php deines Eltern-Themes, da müssten auf ähnliche Weise schon css oder js Dateien so geladen werden, den Code kannst du dann auch einfach anpassen.
Wichtig ist nur, dass du
Code:
get_template_directory_uri()
verwendest (das verweist auf das Theme) und nicht
Code:
get_stylesheet_directory_uri()
(das bleibt im Child-Theme)
 

Dobi78

Wen interessiert's?

PSD Beta Team
@splatter - so würde er aussehen. Bin mir nicht sicher ob es einen Einfluss hat.
sollte aber zuoberst in der functions.php stehen.
PHP:
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
}
Sehe grad FlashZange hat es auch gepostet :)
 

splatter

°°°°°°°°°°°°°°

Jetzt wirds interessant:
Ich hab in meinem childtheme nur header.php und die style.css

1.
Das heißt ich nehme die funktions.php aus dem Parent-Theme und lade sie in mein Child-Theme Verzeichnis und füge dort über das Backend meine Individualisierungen ein?
--------------------------------------

2.
Mit php steig ich nicht so durch, deswegen kam mir die "@import" Geschichte auch sehr entgegen.Css liegt mir mehr.
Es wäre nett wenn mir jmd. mal ein Beispiel für den functions-Code mit der style.css schreiben könnte.
Mein Parent-Theme nennt sich basic und das Child-Theme (ohh wunder :)) basic_child
...und im Vergleich ein Code der in ein übergeordnetes Pluginverzeichnis zu einer Pluginblablabla.css führt.
Wie @FlashZange schreibt gibt es da ja wohl einen Unterschied.

So könnte ich mir das besser ableiten.

Vielen Dank
Splatter
 
Zuletzt bearbeitet:

Mr_Quick

Ich bin so - wie Ich bin

OffTopic:

hast Du auch eine gute Anleitung im Netz gefunden um das Child Theme umzusetzen?
Ich finde dazu immer nur Bruchstücke ;)

thx
 

splatter

°°°°°°°°°°°°°°

[beinaheOfftopic]
Ja, da ging es mir wie dir :)
ich habe mir diese Sachen angeschaut:

http://win-it.info/blog/2014/12/03/child-theme-wordpress/

Bis hierhin hat mir das auch gereicht.

...zumindest sind diese auf deutsch.
Bei englischsprachigen Tutorials hab ich immer Probleme den Code und den erklärenden Text auseinander zu halten, was aber eher mit meiner "Phpschwäche" zu tun hat.
[/beinaheOfftopic]

Gruß
splatter
 

Dobi78

Wen interessiert's?

PSD Beta Team
Das heißt ich nehme die funktions.php aus dem Parent-Theme
Nein, du erstellst ein leere Datei und fügst den Code ein.
PHP:
<?php
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );

}
ein schliessendes ?> ist nicht notwendig!

CSS:
/*
Theme Name:   Basic_Child_Theme (zum Beispiel)
Theme URI:    http://www.deinewebadresse.de
Description:  Deine Beschreibung
Author:       Dein Author Name
Author URI:   http://www.deinewebadresse.de
Template:     basic
Version:      1.0
Tags:         kannst Du vergeben, musst aber nicht
Text Domain:  basic_child
*/

P.s. nutzt du DIVI als Haupttheme?
 

Sargas

Mod | Forum

Teammitglied
PSD Beta Team
Schau dir hier mal beispielsweise an, wie das aussieht http://www.elmastudio.de/wordpress-themes/doks/neubau/#neubau-childtheme

Die functions.php könntest du, denke ich, sogar übernehmen. Die functions.php wird übrigens, im Gegensatz zu den anderen *.php Dateien (index, single, page, ...) nicht ersetzt, wenn du sie im Child Theme Ordner anlegst, sondern ergänzt die functions.php des Parent-Theme, musst die also nicht rüberkopieren.
 

Dobi78

Wen interessiert's?

PSD Beta Team
Ich hab in meinem childtheme nur header.php und die style.css
Je nachdem wie Du die Seite aufgebaut hast, brauchst Du in deinem Child Theme -> header.php, footer.php, functions.php, style.css (falls header und footer nicht so angepasst werden, dass sie bei einem Update flöte gehen würden brauchst Du diese nicht.) Ich machs eigentlich immer.
sondern ergänzt die functions.php des Parent-Theme, musst die also nicht rüberkopieren.
Deshalb schrieb ich, dass er eine leere functions.php nutzen soll. Denn das Child nimmt die zuerst die eigene und nimmt dann die functions.php aus dem Haupttheme. Aus diesem Grund ist es schlichtweg nicht nötig alles zu kopieren sondern nur die neuen Funktionen im Child anzulegen/erweitern.
 

splatter

°°°°°°°°°°°°°°

Schau dir hier mal beispielsweise an, wie das aussieht http://www.elmastudio.de/wordpress-themes/doks/neubau/#neubau-childtheme

Die functions.php könntest du, denke ich, sogar übernehmen. Die functions.php wird übrigens, im Gegensatz zu den anderen *.php Dateien (index, single, page, ...) nicht ersetzt, wenn du sie im Child Theme Ordner anlegst, sondern ergänzt die functions.php des Parent-Theme, musst die also nicht rüberkopieren.

Danke euch, das schau ich mir genauer an.
Demnächst weitere Fragen ;)


P.s. nutzt du DIVI als Haupttheme?
Ich nutze https://themify.me/themes/basic

Gruß
splatter

edit:
Deshalb schrieb ich, dass er eine leere functions.php nutzen soll. Denn das Child nimmt die zuerst die eigene und nimmt dann die functions.php aus dem Haupttheme. Aus diesem Grund ist es schlichtweg nicht nötig alles zu kopieren sondern nur die neuen Funktionen im Child anzulegen/erweitern.
da war ich mir niie sicher. manchmal liest man das diese dann komplett ersetzt werden, das verwirrt etwas. Mit einer leeren Datei ist es auch nicht so unübersichtlich.
 

splatter

°°°°°°°°°°°°°°

@Dobi78
function .pph = Bahnhof :confused:

Ich verstehe nicht was dort rein soll.
Wenn ich sie so übernehme wie im Link von @Sargas ist ja noch nichts definiert.
Was muss da wie rein? ...und wie sollte meine Css dann ausschauen?

ändert das denn etwas an der art wie ich meinen Css code anpasse.

So schaut meine css im Moment aus:
CSS:
/*
Theme Name: Basic Child
Description: Pencil Style
Author:
Author URI: http://www.splatterspace.com
Template: basic
Version: 1.0
Tags:
*/
@import url("../basic/style.css");

......

@import url("../basic/themify/themify-builder/css/themify-builder-style.css");

......

@import url("../basic/themify/css/lightbox.css");

......

@import url("../basic/media-queries.css");

......

Gruß
splatter
 
Zuletzt bearbeitet:

Dobi78

Wen interessiert's?

PSD Beta Team
@splatter - Bin selbst nicht der php-Futzi aber ich bin der Meinung, dass Du ausser die Einbindung der style.css nichts brauchst, da Du alle Anpassungen sowieso in der style.css (child) erledigst.

Somit würde die style.css so aussehen:
CSS:
/*
Theme Name: Basic Child
Description: Pencil Style
Author:
Author URI: http://www.splatterspace.com
Template: basic
Version: 1.0
Tags:
*/

/*--------------------------------------*/
/*--------- AB HIER DEIN CODE ----------*/
/*--------------------------------------*/

und die functions.php welche Du neu erstellst und in dein Child Theme Ordner reinlegst so:
PHP:
<?php
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
}

In der neuen style.css habe ich beispielsweise ALLE Änderungen drin, auch die, welche von Plugins wie z.B. ContactForm7 kommen drin usw. So hab ich alles an einem Ort und bei Updates geht nichts flöte.

in die neue functions.php kommen nur geänderte/neue Funktionen rein.... das war es auch schon
 
Zuletzt bearbeitet:

splatter

°°°°°°°°°°°°°°

dass Du ausser die Einbindung der style.css nichts brauchst, da Du alle Anpassungen sowieso in der style.css (child) erledigst.

das verstehe ich nicht, du siehst doch das ich Anpassungen nicht nur in der style .css mache sondern auch in:
.../basic/themify/themify-builder/css/themify-builder-style.css
../basic/themify/css/lightbox.css
../basic/media-queries.css
und ich möchte auch Anpassungen in diversen Plugins vornehmen, die nicht im Themes Ordner (Basic) liegen.

Woher soll denn WordPress wissen welche css Datei ich meine wenn ich die Dateien nicht direkt mit @import einbinde?

Gruß
splatter
 

Dobi78

Wen interessiert's?

PSD Beta Team
Gegenfrage: Was passiert mit deinen Anpassungen bei einem Update?
Ausserdem befinden sich meine Plugins auch im root und nicht im Theme Ordner ;)
du sprichst sie ja mit Klassen oder ID's an... oder stehe ich komplett auf dem schlauch.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.635
Beiträge
1.538.451
Mitglieder
67.557
Neuestes Mitglied
Charal
Oben