Support » Themes » Fehlende Startseiten-Abschnitte im ChildTheme

  • Gelöst hightower1848

    (@hightower1848)


    Hallo zusammen,

    ich bin gerade dabei erste Schritte mit WordPress zu gehen und hoffe, dass mir jemand helfen kann.

    Auf meiner Seite ist das TwentySeventeen-Theme installiert und aus Testzwecken habe ich ein Child-Theme erstellt, in dem ich gerne Änderungen vornehmen möchte. Wenn ich das Konzept richtig verstanden habe, werden alle Dateien des Parent-Themes geladen, sofern ich keine gleichlautenden Dateien im Child-Theme-Ordner eingefügt habe.

    Mein Child-Theme-Ordner enthält lediglich die style.css und functions.php, die bisher nur Code enthalten, der besagt, dass zuerst das Parent-Theme geladen wird und anschließend erst das Child-Theme.

    Hier kommt jetzt das Problem:
    Im TwentySeventeen-Theme ist es auf der Startseite möglich Startseiten-Abschnitte festzulegen. Wenn ich allerdings mein Child-Theme aktiviere, kann ich diese Abschnitte nicht mehr festlegen, d.h. die Einstellungsmöglichkeit ist gar nicht mehr vorhanden.

    Was muss ich tun, damit ich die Startseiten-Abschnitte auch in meinem Child-Theme festlegen kann?

    EDIT: Die Frage sollte eigentlich im Theme-Forum landen.

    • Dieses Thema wurde geändert vor 6 Jahren, 1 Monat von hightower1848.
Ansicht von 4 Antworten - 1 bis 4 (von insgesamt 4)
  • Moderator Torsten Landsiedel

    (@zodiac1978)

    werden alle Dateien des Parent-Themes geladen, sofern ich keine gleichlautenden Dateien im Child-Theme-Ordner eingefügt habe.

    Ja, bis auf den Ausnahmefall functions.php– da werden beide geladen.

    die bisher nur Code enthalten, der besagt, dass zuerst das Parent-Theme geladen wird und anschließend erst das Child-Theme.

    Du meinst das CSS vom Theme, oder? Nicht das Theme selbst …

    Was muss ich tun, damit ich die Startseiten-Abschnitte auch in meinem Child-Theme festlegen kann?

    Ich wüsste gerade keinen Grund, warum das nicht mehr gehen sollte. Hast du denn die entsprechenden Schritte ausgeführt?
    https://codex.wordpress.org/Twenty_Seventeen#Front_Page

    Gruß, Torsten

    Thread-Starter hightower1848

    (@hightower1848)

    Vielen Dank für deine Antwort! Das Problem hat sich dann auch schon erledigt. Manchmal übersieht man die offensichtlichsten Sachen.

    Allerdings bin ich jetzt auf eine weitere Frage gestoßen. Ich habe auf https://wpcolt.com/twenty-seventeen-theme-front-page-sections/ einen Code-Abschnitt gefunden, mit dem die Anzahl der Startseitenabschnitte erhöht werden kann (standardmäßig sind nur 4 möglich). Dieser Abschnitt muss in der functions.php ergänzt werden.

    Bislang sieht die functions.php so aus:

    <?php
    /**
    * Child theme stylesheet einbinden in Abhängigkeit vom Original-Stylesheet
    */
    
    function child_theme_styles() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
    wp_enqueue_style( 'child-theme-css', get_stylesheet_directory_uri() .'/style.css' , array('parent-style'));
    
    }
    add_action( 'wp_enqueue_scripts', 'child_theme_styles' );?>

    Wenn ich die neue Funktion im php-Abschnitt einfüge, lässt sich die Datei nicht speichern und meldet einen Fehler. Wenn ich die Funktion nach dem Abschnitt einfüge, kann ich lediglich den Code als Text im Browser sehen (z.B. im Dashboard).

    Erste Frage: An welcher Stelle wäre der Code richtigerweise einzufügen?
    Zweite Frage: Muss ich sämtliche Dateien (front-page.php, customizer.php, template-functions.php), in denen die Funktion aufgerufen wird aus dem Parent-Theme kopieren?

    Schau dir mal in der letzten Zeile deines Codes die letzten zwei Zeichen an:
    add_action( 'wp_enqueue_scripts', 'child_theme_styles' );?>

    ?> beendet den Abschnitt mit PHP-Code. Alles was danach kommt, wird als HTML interpretiert und folglich als Text ausgegeben.

    Nimmst du die beiden Zeichen raus und fügst dann PHP-Code ein, wird der auch als PHP-Code interpretiert.

    Das schließende PHP-Tag kann auch ganz entfallen, wenn nicht anschließend noch HTML ausgegeben werden soll (was bei der functions.php sowieso unerwünscht ist).

    Thread-Starter hightower1848

    (@hightower1848)

    Spannenderweise hatte ich wie beschrieben den Code vor dem schließenden PHP-Tag eingefügt und da hatte es nicht funktioniert.

    Ich habe jetzt einmal das schließende PHP-Tag komplett entfernt und den Code eingefügt und schon funktioniert es auch.

    Vielen Dank für den Hinweis, auch wenn ich nicht ganz nachvollziehen kann, woran es vorher gescheitert ist.

    Und nochmal danke an euch beide für die sehr schnelle Hilfe!

Ansicht von 4 Antworten - 1 bis 4 (von insgesamt 4)
  • Das Thema „Fehlende Startseiten-Abschnitte im ChildTheme“ ist für neue Antworten geschlossen.