como exibir todas as categorias no wordpress?

usei este código:

      $categories = wp_get_post_categories(get_the_ID());
      foreach($categories as $category){
          echo '<div class="col-md-4"><a href="' . get_category_link($category) . '">' . get_cat_name($category) . '</a></div>';
        }
Mas devolva apenas uma categoria, Como posso obter todas as Categorias?

Author: Clorge32, 2016-09-26

3 answers

No código que nos deu, está seleccionado as Categorias seleccionadas para o post específico get_the_ID () está a fazer essa parte. No entanto, seria melhor usar outra função get_ categories () https://developer.wordpress.org/reference/functions/get_categories o que você gostaria de fazer assim:

$categories = get_categories();
foreach($categories as $category) {
   echo '<div class="col-md-4"><a href="' . get_category_link($category->term_id) . '">' . $category->name . '</a></div>';
}

Também pode passar por argumentos para ser mais específico (se necessário) - ver https://developer.wordpress.org/reference/functions/get_terms/ para mais detalhes sobre o que você pode passar por

 13
Author: Simon Pollard, 2016-09-26 14:31:06

Você também pode usar wp_ list_ categories e passar argumentos para ele para mostrar apenas o que você precisa. Uma lista completa de argumentos pode ser encontrada no codex: https://developer.wordpress.org/reference/functions/wp_list_categories

Isto irá indicar todas as Categorias (mesmo que estejam vazias) indentadas para indicar a hierarquia.

$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'           => '<br />',
    '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) );
 3
Author: Josh Bradley, 2017-12-15 09:48:51
Assim:
<?php
$categories = get_categories( array(
    'orderby' => 'name',
    'order'   => 'ASC'
) );

foreach( $categories as $category ) {
 echo '<div class="col-md-4"><a href="' . get_category_link($category->term_id) . '">' . $category->name . '</a></div>';   
} 
 0
Author: WordpressDave, 2016-09-26 15:05:29