wordpress升级到3.0后,发现首页调用single_cat_title()分类名不显示,对比2.9版本和3.0版本的single_cat_title()函数,发现原来新版本函数内容有更新造成,两个函数对比
//3.0
function single_cat_title($prefix = ”, $display = true ) {
global $wp_query;
if ( is_tag() )
return single_tag_title($prefix, $display);
if ( !is_category() )
return;
$cat = $wp_query->get_queried_object();
$my_cat_name = apply_filters(‘single_cat_title’, $cat->name);
if ( !empty($my_cat_name) ) {
if ( $display )
echo $prefix . $my_cat_name;
else
return $my_cat_name;
}
}
//2.9
function single_cat_title($prefix = ”, $display = true ) {
$cat = intval( get_query_var(‘cat’) );
if ( !empty($cat) && !(strtoupper($cat) == ‘ALL’) ) {
$my_cat_name = apply_filters(‘single_cat_title’, get_the_category_by_ID($cat));
if ( !empty($my_cat_name) ) {
if ( $display )
echo $prefix.strip_tags($my_cat_name);
else
return strip_tags($my_cat_name);
}
} else if ( is_tag() ) {
return single_tag_title($prefix, $display);
}
}
把2.9的函数复制一个到/wp-includes/general-template.php,重命名single_cat_title2(),调用正常。
//3.0
function single_cat_title($prefix = ”, $display = true ) {
global $wp_query;
if ( is_tag() )
return single_tag_title($prefix, $display);
if ( !is_category() )
return;
$cat = $wp_query->get_queried_object();
$my_cat_name = apply_filters(‘single_cat_title’, $cat->name);
if ( !empty($my_cat_name) ) {
if ( $display )
echo $prefix . $my_cat_name;
else
return $my_cat_name;
}
}
//2.9
function single_cat_title($prefix = ”, $display = true ) {
$cat = intval( get_query_var(‘cat’) );
if ( !empty($cat) && !(strtoupper($cat) == ‘ALL’) ) {
$my_cat_name = apply_filters(‘single_cat_title’, get_the_category_by_ID($cat));
if ( !empty($my_cat_name) ) {
if ( $display )
echo $prefix.strip_tags($my_cat_name);
else
return strip_tags($my_cat_name);
}
} else if ( is_tag() ) {
return single_tag_title($prefix, $display);
}
}
把2.9的函数复制一个到/wp-includes/general-template.php,重命名single_cat_title2(),调用正常。