1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

WP 6.x Untergeordnetes css von Childtheme wird nicht eingebunden

Dieses Thema im Forum "Design" wurde erstellt von floh19, 4. Februar 2025 um 16:09 Uhr.

  1. floh19

    floh19 New Member

    Registriert seit:
    31. Oktober 2018
    Beiträge:
    3
    Zustimmungen:
    0
    Hallo zusammen,
    ich habe ein Child-Theme vom Theme Twenty Twelve erstellt inkl. eigener css-Datei, functions.php. Bislang funktioniert alles.
    Das Original-WP-Theme hat eine weitere untergeordnete css-Datei, die in einem Unterordner vom Theme "css" liegt. Dieses möchte ich überschreiben.
    Meine functions.php vom Child-Theme habe ich mit folgendem Code ergänzt:

    function block_style() {
    wp_enqueue_style('block-styles', get_template_directory_uri().'/css/blocks.css');
    }
    add_action('wp_enqueue_scripts', 'block_style');

    Die zu überschreibende Datei blocks.css liegt im Unterordner meines Child-Themes.
    Dennoch wird das css nicht "gezogen".
    Habe ich einen Fehler im Code?
    Kann mir jemand einen Tipp geben?

    Vielen Dank vorab
    Flo
     
  2. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    12.281
    Zustimmungen:
    1.902
    1. get_template_directory_uri() zeigt auf den Parent Theme Ordner, get_stylesheet_directory_uri() würde auf den Child Theme Ordner zeigen
    2. Das korrekte Handle zum Überschreiben wäre twentytwelve-block-style nicht wie in Deinem Code block-styles
    3. Die Dependency wäre twentytwelve-style damit die Reihenfolge des Ladens passt, fehlt in Deinem Code

    Versuche es z.B. damit:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Wichtig: Das macht man aber nur so, wenn man die blocks.css des Parent Themes wirklich komplett weg haben bzw. überlagern will. Üblicherweise ergänzt man eigenes CSS dazu über eine zusätzliche Datei im Child Theme, das nur als Anmerkung.
     
  3. floh19

    floh19 New Member

    Registriert seit:
    31. Oktober 2018
    Beiträge:
    3
    Zustimmungen:
    0
    Herzlichen Dank, das habe ich nun verstanden und es funktioniert auch.

    Gerne würde ich so verfahren, wie Du angemerkt hast, über ein zusätzliches CSS im Child-Theme.
    Hatte das auch schon vorher ausprobiert, doch alles wurde von der Original blocks.css überschrieben.

    Ich hatte in der Child-functions.php folgenden Code eingefügt:

    function add_css() {
    wp_enqueue_style( 'parent-style', get_stylesheet_directory_uri().'/style.css' );
    wp_enqueue_style( 'style', get_stylesheet_directory_uri().'/css/custom.css' );
    }
    add_action( 'wp_enqueue_scripts', 'add_css' );

    Die custom.css wird gezogen, jedoch von der blocks.css überschrieben, da sie als letzte in der Reihenfolge ist.

    Was kann ich tun, damit die custom.css nicht überschrieben wird?
     
  4. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    12.281
    Zustimmungen:
    1.902
    Wenn Du Dein custom.css nach der blocks.css des Parent Theme laden willst, musst Du das Handle twentytwelve-block-style der Datei aus dem Parent Theme in Deinem Code als Dependency = Abhängigkeit mit angeben, z.B. so:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Siehe auch wp_enqueue_style() Dokumentation.
     
  5. floh19

    floh19 New Member

    Registriert seit:
    31. Oktober 2018
    Beiträge:
    3
    Zustimmungen:
    0
    Ui, die Dokumentation und die Skriptabhängigkeiten sind im Prinzip verständlich, da ich aber kein Programmierer bin, hätte ich das auch mit dieser Dokumentation bestimmt nicht erfolgreich und wenn doch, vor allem nicht so schnell umsetzen können. Ich bin deshalb sehr froh über Deine Anleitung. Vielen Dank.
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden