1

カスタム投稿タイプからの投稿のみを表示する category.php テンプレート (例: category-testimonial.php) を作成するにはどうすればよいですか?

カスタム投稿タイプを作成するコードは次のとおりです。

function testimonials_custom_init() {

    $labels = array(
        'name' => _x('Testimonials', 'post type general name'),
        'singular_name' => _x('Testimonial', 'post type singular name'),
        'add_new' => _x('Add New', 'testimonial'),
        'add_new_item' => __('Add New Testimonial'),
        'edit_item' => __('Edit Item'),
        'new_item' => __('New Testimonial'),
        'view_item' => __('View Testimonial'),
        'search_items' => __('Search Testimonials'),
        'not_found' =>  __('Nothing found'),
        'not_found_in_trash' => __('Nothing found in Trash'),
        'parent_item_colon' => ''
    );

    $args = array(
        'labels' => $labels,
        'public' => true,
        'publicly_queryable' => true,
        'show_ui' => true,
        'show_in_menu' => true,
        'show_in_nav_menus' => false,
        'query_var' => true,
        'rewrite' => array('slug','pages'),
        'capability_type' => 'post',
        'hierarchical' => false,
        'menu_position' => 5,
        'has_archive' => 'testimonials',
        'supports' => array('title','editor','thumbnail','excerpt',)
      );

    register_post_type( 'testimonials' , $args );
}
add_action( 'init', 'testimonials_custom_init' );
4

2 に答える 2

3

分類 (タグとカテゴリ) と投稿タイプ (投稿、ページ、カスタム投稿タイプ) を混同しているようです。実際にやりたいことは、 のようなカスタム投稿タイプのアーカイブ テンプレートを作成することですarchive-custom_post_type.php

register_post_type()また、設定した呼び出しでカスタム投稿タイプを作成するときに確認する必要がありますhas_archive => 'custom_post_type'。に移動するとhttp://yourdomain.com/custom_post_type、カスタム アーカイブ テンプレートに移動します。

詳細については、 register_post_typeテンプレート階層に関する WP のドキュメントを参照してください。

于 2012-08-14T15:08:58.183 に答える