如何在WordPress中显示所有分类?

13 浏览
0 Comments

如何在WordPress中显示所有分类?

我使用了以下代码:

      $categories = wp_get_post_categories(get_the_ID());
      foreach($categories as $category){
          echo '' . get_cat_name($category) . '';
        }

但只返回了一个类别,我如何获取所有类别?

0
0 Comments

问题:如何在WordPress中显示所有分类?

原因:在WordPress中,默认情况下,只会显示具有文章的分类。如果想要显示所有分类,包括没有文章的分类,需要使用特定的参数进行设置。

解决方法:可以使用wp_list_categories函数,并传递参数来显示所需的分类。可以在codex中找到参数的完整列表。

代码如下:

$args = array(
    'child_of'            => 0,
    'current_category'    => 0,
    'depth'               => 0,
    'echo'                => 1,
    'exclude'             => '',
    'exclude_tree'        => '',
    'feed'                => '',
    'feed_image'          => '',
    'feed_type'           => '',
    'hide_empty'          => 0,
    'hide_title_if_empty' => false,
    'hierarchical'        => true,
    'order'               => 'ASC',
    'orderby'             => 'name',
    'separator'           => '',
    'show_count'          => 0,
    'show_option_all'     => '',
    'show_option_none'    => __( 'No categories' ),
    'style'               => 'list',
    'taxonomy'            => 'category',
    'title_li'            => __( 'Categories' ),
    'use_desc_for_title'  => 1,
);
var_dump( wp_list_categories($args) );

以上代码将输出所有分类(即使它们为空),并使用缩进表示层次结构。可以根据需要调整参数来满足特定需求。

0
0 Comments

在WordPress中显示所有分类的方法是通过使用get_categories函数来获取所有分类,然后使用循环来逐个显示分类。下面的代码示例展示了如何使用get_categories函数和循环来显示所有分类:

 'name',
    'order'   => 'ASC'
) );
foreach( $categories as $category ) {
    echo '';
} 
?>

然而,某些情况下这段代码会返回相同的分类三次,即使他们有四个不同的分类并且至少有一篇文章。这个问题发生的原因可能是分类的设置不正确,导致获取分类时出现重复的情况。

要解决这个问题,可以尝试以下几个步骤:

1. 确保每个分类都有至少一篇文章。如果有分类没有文章,可以在后台编辑每个分类并添加至少一篇文章。

2. 检查分类的设置。确保每个分类都有唯一的名称和slug(别名),并且没有重复的分类。可以在WordPress后台的“文章”>“分类目录”中编辑分类的名称和slug。

3. 清除缓存。有时候缓存可能会导致显示错误的分类。清除网站的缓存,可以使用插件如WP Super Cache或W3 Total Cache。

4. 更新Permalink设置。在WordPress后台的“设置”>“固定链接”中,选择一个合适的Permalink结构并保存更改。这有助于刷新链接和分类的设置。

通过检查和调整分类的设置,清除缓存,并更新Permalink设置,应该能够解决显示重复分类的问题。

0
0 Comments

如何在WordPress中显示所有分类?

在您提供的代码中,您选择了为特定帖子选择的分类,get_the_ID()负责该部分。然而,最好使用另一个函数get_categories(),您可以像这样使用它:

$categories = get_categories();
foreach($categories as $category) {
   echo '';
}

您还可以传递参数以更具体地获取分类(如果需要)-请参阅有关可以传递的详细信息的链接。

它的工作很好...在这里,我想在分类中获取该分类的第一篇文章图片,那么我该如何获取带有分类的第一篇文章图片?

get_categories()不返回所有分类。它仅返回具有帖子的那些分类。它不会返回计数为0的分类。我该如何获取包括那些没有帖子的所有分类?

查看代码示例下方的链接,您可以添加一个参数以返回所有分类,`'hide_empty' => false`就是您要找的。

文章整理:小助手

0