kre8tiv / urwahl3000

Freies Wordpress-Theme für GRÜNE Köpfe & Gliederungen
GNU General Public License v3.0
17 stars 14 forks source link

Alternatives Logo durch Childtheme #22

Closed larsschellhas closed 6 years ago

larsschellhas commented 6 years ago

Durch die Verwendung von get_stylesheet_directory_uri() anstelle von get_template_directory_uri() kann das im Childtheme hinterlegte Logo überschrieben werden und somit eine z.B. lokalisierte Logo-Variante verwendet werden.

larsschellhas commented 6 years ago

Hierzu muss das Logo noch als Bilddatei unter dem passenden Pfad ../lib/images/logo.png beim Childtheme hinterlegt werden. Das könnte zu Rückwärts-Kompatibilitätsproblemen führen bei allen, die aktuell schon das Child-Theme verwenden! Dieses müsste dann in diesen Fällen aktualisiert werden.

larsschellhas commented 6 years ago

Eine alternative Lösung wäre das Festlegen des Logos über den Customizer, wie es beim Header-Bild bereits geschieht. Allerdings geht das über meine Fähigkeiten gerade hinaus. Vielleicht findet Ihr da eine Lösung.

modulbuero commented 6 years ago

Ich würde hier vorschlagen, get_template_part zu nutzen, wenn das klappt. Denn die Funktion schaut erst im Childtheme nach der Datei und bei Nichtfinden nutzt er das Parenttheme. Wenn du dir das das nochmal anschauen magst, können wir das gern einbauen.

larsschellhas commented 6 years ago

Dann müssten wir die header.php aber über get_template_part aufrufen, da die Logo-Datei kein Template ist, soweit ich das sehe. Oder zumindest müsste man einen Teil aus der header.php ausgliedern, oder?

modulbuero commented 6 years ago

Oh, du hast ja Recht, get_template_part bezieht sich nur auf php-Dateien. Ich meinte locate_template, mehr Infos findest du hier: https://developer.wordpress.org/reference/functions/locate_template/.

Damit müsste das Logo ladbar sein. Die Funktion gibt als Return einen absoluten Pfad zurück, es müsste also dann noch eine Ersetzung von get_home_path() auf home_url() passieren – sollte ganz einfach als str_replace funktionieren.

larsschellhas commented 6 years ago

So, erledigt.

modulbuero commented 6 years ago

Danke dir!

modulbuero commented 6 years ago

Sorry, @larsschellhas, ich hatte dich hier auf die falsche Fährte geschickt. get_home_path() steht nur angemeldeten NutzerInnen zur Verfügung, daher macht das Update die Websites für nicht-angemeldete leider kaputt. Ich habe den Fehler eben gemeldet bekommen und selbst gefixed. Tut mir Leid!