webdevqa.jp.net

カスタム投稿タイプの単一ページのタグを表示する方法

カスタム投稿タイプのエントリに関連するタグを単一のページに表示しようとしています。

私のカスタム投稿タイプは 'Blog'として登録されていて、これが私のfunctions.phpファイルのタグのコードです。

function blog_tag_init() 
{

$labels = array(
    'name' => 'Tags',
    'singular_name' => 'Tag',
    'search_items' => 'Search Tags',
    'all_items' => 'All Tags',
    'parent_item' => 'Parent Tag',
    'parent_item_colon' => 'Parent Tag:',
    'edit_item' => 'Edit Tag',
    'update_item' => 'Update Tag',
    'add_new_item' => 'Add Tag',
    'new_item_name' => 'New Tag Name',
    'menu_name' => 'Tags',
);

register_taxonomy( 'blog-tags', 'blog',
    array(
        'labels' => $labels,
        'show_ui' => true,
        'show_admin_column' => true,
        'hierarchical' => false,
        'query_var'         => true
    )
);
}
add_action( 'init', 'blog_tag_init' );

私の単一のテンプレートファイルでは、タグを表示するために以下のコードを使用します。

<p><?php the_tags(' and tagged under ', ', '); ?> </p>

しかし、タグは単一のページには表示されず、すべて正しく設定されているように見えるため、その理由はわかりません。

1
Neelam Khan

カスタム投稿タイプでthe_tagsを使用することはできません。代わりに the_terms を使用してください。

そのため、この関数を使ってタグを取得できます。

the_terms( get_the_ID(), 'blog-tags', ' and tagged under ', ', '); 
1
Jack Johansson