Änderungen der functions.php und Update

  • Hallo zusammen,
    Ich wusste nicht ob ich hier, in "Installation" oder sonstwo richtig bin, daher mal allgemein :)

    Ich habe für die Kampagnenseite meiner Star Wars Rollenspielgruppe die functions.php angepasst, genauer gesagt die Funktion, die über meinen Blogeinträgen das Datum anzeigt (mysql2date). Statt dem "26. November 2017" hätte ich gerne "26.11. Jahr 2 NSY". Hat auch wunderbar geklappt, bis zum letzten automatischen Update. Jedenfalls habe ich das Gefühl, dass es seitdem wieder der "26. November 2017" war. Wird die functions.php (im includes Ordner, nicht im Theme) beim Update überschrieben? Wenn ja, wie kann ich die Datumsanzeige dauerhaft umstellen? Habe die Datumsfunktion schon ein eine eigene include ausgelagert, aber dann müsste ich die ja trotzdem in der functions.php noch nach jedem Update inkludieren.. Den Aufwand würde ich mir gerne sparen.
    Fuchse mich gerade noch etwas in Wordpress rein, vielleicht hat ja jemand den zündenden Tipp für mich.

    • 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

  • Wird die functions.php (im includes Ordner, nicht im Theme) beim Update überschrieben?

    Ja wird sie. Dazu muss man sagen, bei Wordpress werden nie (nie!) die Dateien im wp-includes oder wp-admin Verzeichnis angefasst. Der korrekte weg ist die Änderung über dein Theme. Auch dieses wird allerdings nicht direkt geändert (sonst sind die Änderungen nach einen Theme Update auch dort weg). Stattdessen legst du ein Child-Theme an und änderst die Dateien dort.

    https://www.elmastudio.de/ein-wordpress-…-gehts-richtig/

  • Also hat das Child Theme seine eigene functions.php, da würde ich dann einfach die Funktion "mysql2date" überschreiben? Oder wie bekomme ich dann mein Datumsformat umgestellt?

  • Ok, ich glaube ich habe es geschafft ein Child Theme anzulegen und es zu benutzen. In der functions.php könnte ich nun meine Funktion schreiben, die das Datum ändert und mit add_filter('mysql2date', 'starwarsdate'); die Funktion aus dem Parent Theme überschreiben. Aber die mysql2date gehört nicht zum Parent Theme, sondern zu Wordpress selbst. Wie überschreibe ich die denn?

  • Also hat das Child Theme seine eigene functions.php

    Genau

    da würde ich dann einfach die Funktion "mysql2date" überschreiben? Oder wie bekomme ich dann mein Datumsformat umgestellt?

    Jein. Vergiss am besten die mysql2date(). Du kannst die Core-Functions nicht überschreiben.

    Aber du könntest dort eine eigene Funktion anlegen, die das Datumsformat ändert und geändert ausgibt. Anschließend passt du die Templates an, in denen das Datum ausgegeben wird, sprich führst dort jeweils deine Funktion aus. Oder du verwendest den Date-Hook: https://developer.wordpress.org/reference/hooks/the_date/

  • Hat sich erledigt. Habe aufgehört logisch darüber nachzudenken und einfach zu bruteforcen, also so lange ausprobieren, bis es geht. Überschreibe jetzt in meinem Child Theme die "get_the_date", jetzt klappt es:

    Auf jeden Fall vielen Dank für die Hilfe, da wäre ich so nie drauf gekommen..

Jetzt mitmachen!

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