Kategorie single.php Template Blog?

  • Hallo,

    gibt es eine Möglichkeit meinen Blog ein neues Template (Beispiel singlenew.php) zu zuweisen, das aber nur bei einer Kategorie funktionieren soll.
    Alle anderen Kategorien sollen das Standard Template beibehalten

    Weiß bitte jemand eine lösung?
    9 Stunden und ich habe nichts gefunden ;(

    Vielen Dank an die coole Runde ;)

    PS: Bin ich wohl im richtige Thread? Wenn nicht entschuldigt bitte

    • 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

  • Hallo, vielen tausend dank und ich wusste jetzt auch nach was ich so suchen muss ;)

    ich habe es mit diesem Code gemacht:

    //Fragt den slug der Kategorie des Beitrags ab und wendet single-[kategorieslug].php als Template an, wenn vorhanden
    add_filter('single_template', create_function(
    '$the_template',
    'foreach( (array) get_the_category() as $cat ) {
    if ( file_exists(TEMPLATEPATH . "/single-{$cat->slug}.php") )
    return TEMPLATEPATH . "/single-{$cat->slug}.php"; }
    return $the_template;' )
    );


    und ein Temlate mit single-KATEGORIEKURZFORM.php

    und es läuft.


    Danke für den perfekten Denkanstoss :)

  • Gern geschehen, wobei dieser Code a) bei mehreren Kategorien unklare Ergebnisse liefern könnte, je nachdem welche Kategorie WordPress als erste zurückliefert und b) die Verwendung von TEMPLATEPATH schon lange veraltet (und missverständlich) ist, besser / richtig wäre get_stylesheet_directory(), und c) create_function seit PHP 7.2.x ebenfalls veraltet ist ... da gibt es also noch einiges an Optimierungspotential.

Jetzt mitmachen!

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