Modify text after post count

时间:2014-06-28 作者:drmarkwomack

在我的归档页面上,我列出了带有帖子计数的类别。我修改了post count,删除了括号,将括号括在一个向右浮动的范围内,并在每次post count后加上“Entries”一词。但我希望计数后的文本更改为只有一篇文章的类别(即“条目”而不是“条目”)。

我当前的代码是:

<?php
$variable = wp_list_categories(\'title_li=&echo=0&show_count=1\');
$variable = str_replace( \'(\', \'<span class="cat-count">\', $variable);
$variable = str_replace( \')\', \' Entries</span>\', $variable);
echo $variable;
?>
我怎样才能修改它,使带有1个帖子的类别显示“1个条目”,而多于1个的类别显示“X个条目”?

你可以看到我的档案页面here

1 个回复
最合适的回答,由SO网友:Caspar 整理而成

这个_n() 函数将区分单数和复数。如何使用它是在codex.

EDIT:抱歉。我第一次尝试回答还不足以让你明白。使用的问题wp_list_categories() 在这种情况下,它会打印出预先格式化的HTML,而您不会得到任何可以用于$count的值。

相反,请尝试使用get_categories() 它将返回一个类别对象数组,您可以点击该数组来获取日志计数并相应地显示。

下面的内容应该可以做到这一点,或者至少可以让您开始:

<?php
$categories = get_categories();
echo \'<ul>\';
    foreach($categories as $category) { 
        echo \'<li><span class="cat-count"><a href="\' . get_category_link( $category->term_id ) . \'">\' . $category->name.\'</a>\'; 
        echo \' \' . $category->count . _n(\' Entry\', \' Entries\', $category->count ) . \'</span></li>\';
    } 
echo \'</ul>\';
?>

结束

相关推荐

从WP_LIST_CATEGORIES中删除‘Category’一词

我有以下代码:wp_list_categories();它输出我的所有类别,但是,它使它们成为列表元素的子元素,称为CATEGORIES.所以,我得到了一个无序的列表,如下所示:CATEGORIES * FASHION * DAILY FASHION CANDY * TRENDS * BEAUTY * ACCESSORIES * CELEBRITIES * LIFESTYLE 但是,我只需要:* FASHION * DAILY FA