In dieser Artikelreihe geht es darum, ein WordPress-Theme zu erstellen – von Grund auf. Teil 13 beschäftigt sich mit der Ansicht der Archive, wie etwa der Kategorie-Ansicht, sowie der Datei für die Ansicht aller Beiträge eines Autors.
Allgemeine Archiv-Ansicht des WordPress-Themes anpassen
Um alle Archiv-Ansichten im gleichen Maße anders darzustellen, als die index.php
vermag, genügt eine archive.php
. Der Unterschied zur index.php
ist, dass der Titel des Archivs sowie die gegebenenfalls festgelegte Beschreibung angezeigt wird. Die Datei sieht folgendermaßen aus:
<?php get_header(); ?>
<main role="main">
<?php if ( have_posts() ) { ?>
<header class="archive-header">
<h1>
<?php esc_html( the_archive_title() ); ?>
</h1>
<?php the_archive_description(); ?>
</header>
<?php
while ( have_posts() ) {
the_post();
get_template_part( 'content', get_post_format() );
}
}
the_posts_pagination( array( 'type' => 'list' ) ); ?>
</main>
<?php get_sidebar();
get_footer();
Code-Sprache: HTML, XML (xml)
Wenn mit have_posts()
sichergestellt ist, dass Beiträge vorhanden sind, dann wird mit der the_archive_title()
-Funktion der Titel des Archivs ausgegeben. Darunter folgt, ebenfalls noch in dem header
-Element, die Ausgabe der Beschreibung mit the_archive_description()
. Der Rest des Codes ist schon aus früheren Teilen bekannt.
Ansicht des Autoren-Archivs
Die Archiv-Ansicht der Autoren soll etwas anders sein. Statt der Beschriftung Autor: Florian Brinkmann
soll Alle Beiträge von Florian Brinkmann
als Überschrift angezeigt werden. Deshalb erstellen wir für diese Archiv-Art die author.php
, die folgendermaßen aussieht:
<?php get_header(); ?>
<main role="main">
<?php if ( have_posts() ) { ?>
<header class="archive-header">
<h1>
<?php printf( __( 'All posts by %s', 'bornholm' ), get_the_author() ); ?>
</h1>
<?php if ( get_the_author_meta( 'description' ) ) {
the_author_meta( 'description' );
} ?>
</header>
<?php
while ( have_posts() ) {
the_post();
get_template_part( 'content', get_post_format() );
}
}
the_posts_pagination( array( 'type' => 'list' ) ); ?>
</main>
<?php get_sidebar();
get_footer();
Code-Sprache: HTML, XML (xml)
Der Anfang ist klar. Neu ist, dass wir als Titel nicht einfach the_archive_title()
nutzen, sondern uns einen eigenen String zusammenbauen, in den der Name des Autors mit get_the_author()
eingefügt wird. Anschließend prüfen wir, ob der Autor eine Beschreibung angelegt hat und geben sie im Fall der Fälle mit the_author_meta( 'description' )
aus.
Danach wird wie gewohnt die Loop gestartet und die Beiträge ausgegeben.
Ansicht der Suchergebnisse
Ein weiteres Archiv sind die Suchergebnisse. Auch hier möchten wir ein bisschen von dem Format der the_archive_title()
-Funktion abweichen und als Titel so etwas ausgeben: Suchergebnisse für: Suchbegriff
. Die entsprechende search.php sieht so aus:
<?php get_header(); ?>
<main role="main">
<?php if ( have_posts() ) { ?>
<header class="archive-header">
<h1>
<?php printf( __( 'Search Results for: %s', 'bornholm' ), esc_html( get_search_query() ) ); ?>
</h1>
</header>
<?php
while ( have_posts() ) {
the_post();
get_template_part( 'content', get_post_format() );
}
}
the_posts_pagination( array( 'type' => 'list' ) ); ?>
</main>
<?php get_sidebar();
get_footer();
Code-Sprache: HTML, XML (xml)
Den Suchterm holen wir uns über die get_search_query()
-Funktion und den Rest des Codes kennen wir schon aus den anderen Archiv-Dateien.
Theme-Code
Den Theme-Code findet ihr im Repository auf GitHub. Den Stand nach dem 13. Teil unserer Reihe findet ihr in Tag „v0.11“.
Die weiteren Teile meiner WordPress-Reihe:
- Das eigene WordPress-Theme erstellen – #1: Vorbesprechung und Vorbereitung
- Das eigene WordPress-Theme erstellen – #2: Die style.css und die Metadaten eures Themes
- Das eigene WordPress-Theme erstellen – #3: Die header.php und der Kopf eures Themes
- Das eigene WordPress-Theme erstellen – #4: Die index.php und die Post-Loop
- Das eigene WordPress-Theme erstellen – #5: Die content.php
- Das eigene WordPress-Theme erstellen – #6: Das Theme auf die Übersetzung vorbereiten
- Das eigene WordPress-Theme erstellen – #7: Die Sidebar und der Footer
- Das eigene WordPress-Theme erstellen – #8: Menü, Sidebars und Theme-Support in der functions.php
- Das eigene WordPress-Theme erstellen – #9: Die Einzelansicht der Beiträge und Galerien in der single.php
- Das eigene WordPress-Theme erstellen – #10: Die Galerie-Sidebar mit Galerien aus derselben Kategorie
- Das eigene WordPress-Theme erstellen – #11: Der Kommentarbereich
- Das eigene WordPress-Theme erstellen – #12: Die Galerie und ihre Ansicht in der Blog-Übersicht
- Das eigene WordPress-Theme erstellen – #14: Einzelansicht einer Seite und das 404-Template
- Das eigene WordPress-Theme erstellen – #15: Die alternative Startseite
- Das eigene WordPress-Theme erstellen – #16: Die Portfolio-Ansicht
- Das eigene WordPress-Theme erstellen – #17: Die Theme-Widgets
- Das eigene WordPress-Theme erstellen – #18: Der Customizer
- Das eigene WordPress-Theme erstellen – #19: Die Customizer-Einstellungen im Theme anwenden
- Das eigene WordPress-Theme erstellen – #20: Fertigstellung und Hochladen ins Directory
Dieser Beitrag ist eine Übernahme meines Beitrags für t3n.de.