wordpress关于category和taxnomy陈列的几种情形
Published
2022-04-26
浏览次数 : 186
We can show all category by simple WordPress default function. like this –
<?php wp_list_categories(); ?>
PHPCopy
It has some Parameters to customize more. you can check details here on wp developer reference
Also we can use PHP loop to show more customize way
<?php
$categories = get_categories( array(
'orderby' => 'name',
) );
foreach ( $categories as $category ) {
printf( '<a href="%1$s">%2$s</a><br />',
esc_url( get_category_link( $category->term_id ) ),
esc_html( $category->name )
);
}
?>
PHPCopy
You can also use same parameter here on the array as wp_list_categories. Now what about custom taxonomy? No worries it very simple as previous code.
<?php
// Taxonomy Loop
$terms = get_terms( array(
'taxonomy' => 'custom_taxonomy_name', //custom taxonomy name
'hide_empty' => true,
));
echo '<ul>';
// Loop through all terms with a foreach loop
foreach( $terms as $term ) {
// Use get_term_link to get terms permalink
// USe $term->name to return term name
echo '<li><a href="'. get_term_link( $term ) .'">'. $term->name .'</a></li>';
}
echo '</ul>';
?>
PHPCopy
To Show term inside the wp query loop will be
<?php
the_terms( int $id, string $taxonomy, string $before = '', string $sep = ', ', string $after = '' )
//or simple use
the_terms( get_the_ID() , 'category' ,'', ', ','' );
?>
PHPCopy
Show on single post
<?php
$terms = get_the_terms( $post->ID , 'custom_taxonomy_name' );
foreach ( $terms as $term ) {
echo $term->slug;
}
?>