Template einer Page abfragen

  • Hallo alle zusammen,

    wie kann ich herausfinden, welches Template bei einer Page verwendet wird?

    Es gibt ja die Conditional-Tags wie is_page(), is_home etc. Damit kann man zwar ne Menge abfragen, aber wie man damit das Template einer Page abfragt... keine Ahnung - hat jemand eine Idee dazu?

    Viele Grüße,
    Daniel

    • 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

  • Danke für Deine Antwort, allerdings wird lt. der Template-Hierachie zunächst das Template verwendet, das vom User angegeben wurde, erst danach die page.php, anschließend (als letzte Möglichkeit) die index.php.
    (siehe auch: http://codex.wordpress.org/Template_Hierarchy)

    Genau das habe ich auch gemacht, als ich verschiedene Templates für die Pages erstellt habe. Auf die Art kann ich im Backend für jede neue Page ein passendes Template auswählen. Mein Problem besteht nun aber darin, daß ich nicht weiß, wie ich auf der Page selbst abfragen kann, welches Template verwendet wird (ähnlich wie bei den Conditional Tags: http://codex.wordpress.org/Conditional_Tags)

    Evtl. könnte man direkt an die Datenbank gehen und es so herausbekommen, allerdings ist das imho die letzte Möglichkeit. Würde es gern anders (und eleganter) lösen.

    Hat jemand dazu eine Idee?

    Grüße,
    Daniel

  • Danke für Deine Antwort, allerdings wird lt. der Template-Hierachie zunächst das Template verwendet, das vom User angegeben wurde, erst danach die page.php, anschließend (als letzte Möglichkeit) die index.php.
    (siehe auch: http://codex.wordpress.org/Template_Hierarchy)

    Genau, so steht es bei Template Hierarchy wie auch den Pages: Erst page.php dann index.php -- sonst nix. Es sei denn, Du erstelltst ein eigenes Template und weist es in den Beitragsoptionen der jeweiligen Seite zu.

  • Es sei denn, Du erstelltst ein eigenes Template und weist es in den Beitragsoptionen der jeweiligen Seite zu.

    Ich glaube, wir reden aneinander vorbei ;-) Genau das meine ich doch: Ich erstelle ein eigenes Template und weise das dann einer neuen Page zu. Soweit ist ja auch gar nichts unklar, damit habe ich gar kein Problem.

    Aber: Wie kann ich auf der Page selbst abfragen, welches Template auf sie angewandt wird? Ohne dazu direkt einen Query auf die DB loszulassen? Gibts da eine Möglichkeit? Im Codex habe ich nichts entsprechendes gefunden.

  • Wo finde ich denn in wordpress 2.3 die Möglichkeit, einzelne templates im backendbereich "Seite schreiben" auszuwählen? In 2.2 gab es diese Option "templates". Habe Sie bisher nie benutzt. Jetzt möchte ich aber für die Startseite eine eigene Seite, die sich von allen anderen statischen Seiten abhebt, konstruieren. Dafür benötige ich nun diese Auswahl "templates", finde sie aber in 2.3 nicht mehr wieder oder reicht es es aus, wenn ich einfach das Häkchen bei statische Startseite in den Einstellungen entferne und eine home.php-Seite meinem template-Ordner hinzufüge?

    Grüße
    monk77

  • Hi,

    ich habe eine Kopie von der page.php gemacht und habe diese Kopie ein wenig editiert. Oben, ganz am Anfang, steht nun:

    Zitat

    <?php
    /*
    Template Name: start
    */
    ?>

    <?php get_header();?>

    Dann habe ich sie unter start.php gespeichert. Angezeigt wird sie aber nicht.

  • Die Editierung im Kopfbereich der start.php stimmte aber soweit oder? Muss denn irgendwas noch bedacht oder verlinkt werden. Ich habe, wie gesagt, nur die Kopie angefertigt und im header das start-tag editiert und das ganze unter start.php gespeichert. Ich versuche aber mal einen anderen Namen.

  • Habe es gerade nochmal getestet. Ich habe die template-Datei in page-6.php umbenannt und habe den tag im Kopfbereich der Datei in monk umbenannt. Das Ergebnis ist das gleiche. Die Auswahl erscheint einfach nicht. Gibt es denn irgendetwas, das man dabei noch bedenken sollte?

  • Nö, sollte so passen. Dürfen natürlich keine Whitespaces oder sonstigen Zeichen vor <?php stehen. Ein UTF8-BOM kann auch Probleme bereiten. Und die Templatedatei muss natürlich im aktiven Theme sein (ich weiß, dumme Antwort, aber man muss ja mal nachfragen ;-))

  • Genau das war mein Fehler grins. Ich habe ein template in zwei verschiedenen Farben, welche mittels theme-switcher gewechselt werden können. Durch die Voreinstellung meines bevorzugten templates, habe ich garnicht gemerkt, dass ich die ganze Zeit im nicht aktivierten template unterwegs gewesen bin.

    Jetzt läuft es auf jeden Fall. Habe mir nun eine nette Startseite erstellt. Unter dem Text der Startseite erscheinen jeweils die aktuellsten fünf Beiträge. Es ist jetzt so wie ich es mir vorgestellt habe.

    Danke für Deine Hilfe. Ist wirklich lieb von Dir, dass Du ständig Hilfestellungen bietest.:-D

Jetzt mitmachen!

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