我正在尝试在查看分类页面时输出它的标题。
就像,如果我在“标签”页面上,我会去:
<?php if (is_tag()) {?>
<h1><?php single_cat_title(); ?></h1>
<?php } ?>
但是,如果用户正在查看特定的分类页面,我将如何实现相同的目标?
is_taxonomy()
不存在。
为其他想知道的人找到了这个答案。
遵循本指南:http: //justintadlock.com/archives/2009/06/04/using-custom-taxonomies-to-create-a-movie-database
在底部,想要的行是:
<?php $term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) ); echo $term->name; ?>
可以通过以下方式完成超级简单:
<?php echo get_queried_object()->name; //output $taxonomy->$tax the simple way ?>
name
,当在一些自定义分类页面上蜜蜂时,将是分类术语。例如,在类似的东西上example.com/books/Fiction
,这将呼应fiction
。
而不是name
你也可以使用taxonomy
,这将回显books
。
简而言之,分类不是类别或页面或评论,它们是您声明的东西,例如“产品”或“书籍”。使用它可以解锁 WordPress 的自定义帖子类型功能。您可以制作自己的archive-products.php
, page-products.php
,single-products.php
并从中获得极大的乐趣。:)
这是一个完整的例子,它只修改分类列表页面的标题,使用函数is_tax()
<title><?php
global $page, $paged, $post;
if (is_tax()) {
$term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) );
$term_title = $term->name;
echo "$term_title | ";
} else {
wp_title( '|', true, 'right' );
}
// Add the blog name.
bloginfo( 'name' );
// Add the blog description for the home/front page.
$site_description = get_bloginfo( 'description', 'display' );
if ( $site_description && ( is_home() || is_front_page() ) )
echo " | $site_description";
// Add a page number if necessary:
if ( $paged >= 2 || $page >= 2 )
echo ' | ' . sprintf( __( 'Page %s', 'twentyten' ), max( $paged, $page ) );
?></title>
您可以使用single_term_title()函数。
我认为使用 single_cat_title() 函数很容易。