我假设您希望替换类别名称中的“news”字符串,而不是类别链接中的“news”字符串。
默认类别遍历器包含this line:
$cat_name = apply_filters( \'list_cats\', $cat_name, $category );
允许您修改将显示的类别名称。
因此您可以尝试(未经测试):
<ul class="subcats-blog">
<?php
if ( is_category() ) {
$current_cat = get_query_var(\'cat\');
// Add your custom replace filter:
add_filter( \'list_cats\', \'wpse_155534_replace\' );
wp_list_categories(\'&title_li=&child_of=\'.$current_cat);
// Remove your custom replace filter:
remove_filter( \'list_cats\', \'wpse_155534_replace\' );
}
?>
</ul>
在哪里
/**
* Replace the "news" string in the category names
*
* @see http://wordpress.stackexchange.com/a/155539/26350
*
* @param string $cat_name
* @return string $cat_name
*/
function wpse_155534_replace( $cat_name )
{
return str_ireplace( \'news\', \'\', $cat_name );
}