如何在 single.php wordpress 上显示我的自定义帖子类型的类别名称

问题描述

我想在我的模板 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>';
}