it-swarm.com.de

Wie bekomme ich eine Kategorie und einen Archivtitel?

Wie erhalte ich beim Abfragen der Kategorie (category.php) den Titel der aktuellen Kategorie, dh der Kategorie, die abgefragt wird?

Und wie bekomme ich den Titel für Tag und Datum (sei es der Tag, der Monat oder das Jahr)?

6
Iacchus

Verwenden Sie für die Kategorie die Funktion single_cat_title:
http://codex.wordpress.org/Function_Reference/single_cat_title

Verwenden Sie für das Tag die Funktion single_tag_title:
http://codex.wordpress.org/Function_Reference/single_tag_title

Verwenden Sie für das Datum die Funktion get_the_date:
http://codex.wordpress.org/Function_Reference/get_the_date

Wenn Sie beispielsweise ein zwanzigjähriges Thema öffnen, sehen Sie Folgendes:

category.php:

<h1 class="page-title"><?php
    printf( __( 'Category Archives: %s', 'twentyten' ), '<span>' . single_cat_title( '', false ) . '</span>' );
?></h1>

date.php:

<h1 class="page-title">
    <?php if ( is_day() ) : ?>
        <?php printf( __( 'Daily Archives: <span>%s</span>', 'twentyten' ), get_the_date() ); ?>
    <?php elseif ( is_month() ) : ?>
        <?php printf( __( 'Monthly Archives: <span>%s</span>', 'twentyten' ), get_the_date( _x( 'F Y', 'monthly archives date format', 'twentyten' ) ) ); ?>
    <?php elseif ( is_year() ) : ?>
        <?php printf( __( 'Yearly Archives: <span>%s</span>', 'twentyten' ), get_the_date( _x( 'Y', 'yearly archives date format', 'twentyten' ) ) ); ?>
    <?php else : ?>
        <?php _e( 'Blog Archives', 'twentyten' ); ?>
    <?php endif; ?>
</h1>
9
Eugene Manuilov

Zusätzlich zu den anderen Antworten können Sie Folgendes aufrufen: single_term_title('Currently browsing: '), um 'Aktueller Suchbegriff' anzuzeigen (wobei term der Name des Taxonomiebegriffs ist, den Sie anzeigen. ( Siehe Codex )

Dies funktioniert sowohl für benutzerdefinierte Taxonomien als auch für Kategorie- und Tag-Begriffe.

Möglicherweise ist es auch einfacher, wp_title zu verwenden, das Taxonomien und Archive verarbeitet und den entsprechenden Titel anzeigt, je nachdem, was Sie gerade anzeigen. Es werden im Wesentlichen alle verfügbaren Funktionen zum Anzeigen von Titeln durchgeschaltet, sodass Sie möglicherweise einen Blick auf den Quellcode werfen möchten. Andere sind:

3
Stephen Harris

Versuche Folgendes

<?php single_cat_title(); ?>
<?php single_tag_title(); ?>
<?php the_time('F jS, Y'); ?> // day, month, year
<?php the_time('F, Y'); ?> // month, year
<?php the_time('Y'); ?> // year

Weitere Informationen zum Formatieren des Datums finden Sie im Codex: HERE

PS. Diese sollen innerhalb der Schleife aufgerufen werden. Mit Ausnahme der ersten beiden , die sich außerhalb der Schleife befinden müssen.

1
userabuser

Vielen Dank für Ihre Antworten! Ich habe dies für Datum gemacht:

für archive.php

<?php
/*get archives header*/
if ( is_day() ) { $this_header = "Daily archives for " . get_the_date(); }
else if ( is_month() ){ $this_header = "Monthly archives for " . get_the_date('F, Y'); }
else if ( is_year() ){ $this_header = "Yearly archives for " . get_the_date('Y'); }
else { $this_header = "Archives"; }
?>

dann einfach

<?php echo $this_header; >
1
Iacchus

Dies ist wahrscheinlich mehr, als Sie gerade brauchen, aber es ist wahrscheinlich etwas, das Sie in anderen Bereichen Ihres Themas brauchen werden.

Dieser Code ruft den Kategorienamen des aktuellen Beitrags ab und zeigt ihn als Link zu den in der Kategorie aufgelisteten Beiträgen über die Datei category.php an.

<?php
$category = get_the_category();
$current_category = $category[0];
$parent_category = $current_category->category_parent;
if ( $parent_category != 0 ) {
echo '<a href="' . get_category_link($parent_category) . '">' . get_cat_name($parent_category) . '</a>';
}
echo '<a href="' . get_category_link($current_category) . '">' . $current_category->cat_name . '</a>';
?>
1
Travis Pflanz