问题描述
我想在我的模板 single.PHP 上显示类别名称。我实现了自定义帖子类型和自定义分类法。
我尝试使用 the_category 和 get_the_category,但是没有用。我想我做错了什么。
$gotex_args = array(
'labels' => array(
'name' => 'Dla domu','singular_name' => 'Dla domu','all_items' => 'Dla domu','add_new' => 'Dodaj Nowy wpis','add_new_item' => 'Dodaj Nowy wpis','edit_item' => 'Edytuj wpis','new_item' => 'Nowy wpis','view_item' => 'Zobacz wpis','search_items' => 'Szukaj w wpisach','not_found' => 'Nie znaleziono wpisu','not_found_in_trash' => 'Brak wpisów w koszu','parent_item_colod' => ''
),'public' => true,'public_queryable' => true,'show_ui' => true,'query_ver' => true,'rewrite' => true,'capability_type' => 'post','hierarchical' => false,'menu_position' => 5,'show_in_rest' => true,'supports' => array(
'title','editor','thumbnail'
),'has_archive' => true
);
register_post_type('dla-domu',$gotex_args);
function dladomu_custom_taxonomy() {
$labels = array(
'name' => _x( 'Kategorie','Taxonomy General Name','text_domain' ),'singular_name' => _x( 'Kategorie','Taxonomy Singular Name','menu_name' => __( 'Kategorie','all_items' => __( 'Wszystkie kategorie','parent_item' => __( 'Parent Item','parent_item_colon' => __( 'Parent Item:','new_item_name' => __( 'Nazwa','add_new_item' => __( 'Dodaj Nową kategorię','edit_item' => __( 'Edytuj kategorię','update_item' => __( 'Aktualizuj kategorie','view_item' => __( 'Wyświetl kategorie','separate_items_with_commas' => __( 'Oddziel kategorie przecinkami','add_or_remove_items' => __( 'Dodaj lub usuń kategorię','choose_from_most_used' => __( 'Wybierz jedną z najczęściej używanych','popular_items' => __( 'Popularne kategorie','search_items' => __( 'Szukaj kategorii','not_found' => __( 'Nie znaleziono','no_terms' => __( 'Brak kategorii','items_list' => __( 'Lista kategorii','items_list_navigation' => __( 'Nawigacja kategorii',);
$args = array(
'labels' => $labels,'hierarchical' => true,'public' => true,'show_ui' => true,'show_admin_column' => true,'show_in_nav_menus' => true,'show_tagcloud' => true,);
register_taxonomy( 'kategorie_dladomu',array( 'dla-domu' ),$args );
}
add_action( 'init','dladomu_custom_taxonomy',0 );
解决方法
您可以使用 get_term_link()
例如:
<?php
$terms = get_the_terms( get_the_ID(),'kategorie_dladomu' );
if ( $terms && ! is_wp_error( $terms ) ) {
echo '<ul>';
foreach ( $terms as $term ) {
echo '<li><a href="'. get_term_link($term) .'">'. $term->name .'</a></li>';
}
echo '<ul>';
}