我有一个以前见过的问题,但没有一个答案能解决我的问题。这是我以前遇到过的问题,但从未设法解决。
我有一个干净的 Wordpress 安装,并且在functions.php文件中我创建了一个自定义帖子类型
register_nav_menu('main', 'Main navigation menu');
function add_custom_post_type() {
    $labels = array(
        'name' => _x('Books', 'post type general name'),
        'singular_name' => _x('Book', 'post type singular name'),
        'add_new' => _x('Add New', 'book'),
        'add_new_item' => __('Add New Book'),
        'edit_item' => __('Edit Book'),
        'new_item' => __('New Book'),
        'all_items' => __('All Books'),
        'view_item' => __('View Book'),
        'search_items' => __('Search Books'),
        'not_found' =>  __('No books found'),
        'not_found_in_trash' => __('No books found in Trash'), 
        'parent_item_colon' => '',
        'menu_name' => __('Books')
    );
    $args = array(
        'labels' => $labels,
        'public' => true,
        'publicly_queryable' => true,
        'show_ui' => true, 
        'show_in_menu' => true, 
        'query_var' => true,
        'rewrite' => true,
        'capability_type' => 'post',
        'has_archive' => true, 
        'hierarchical' => false,
        'menu_position' => null,
        'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments' )
    ); 
    register_post_type('book', $args);
}
我已经为这些文件制作了一个模板文件archive-book.php,single-book.php一切正常。当我转到“http://localhost/wordpress/book”时,我可以查看书籍现在我想创建一个自定义分类法,所以我也这样做了functions.php:
add_action('init', 'add_custom_post_type');
function add_custom_taxonomy() {
    register_taxonomy(
        'rating',
        'book',
        array(
            'label' => 'Rating',
            'hierarchical' => true,
            'show_ui' => true,
            'query_var' => 'book',
            'has_archive' => true,
            'rewrite' => array(
                'slug' => 'book/rating'
            )
        )
    );
}
分类显示在管理页面中,我可以添加新术语,并将它们添加到书籍中。但现在问题来了。我想查看所有书籍的概述,比如说,评分为“nice”,我会转到“http://localhost/wordpress/book/rating/nice”。我创建了以下模板文件:taxonomy-rating-nice.php、taxonomy-rating.php 和 taxonomy.php。
但不知何故,wordpress 只显示了 index.php 文件,并没有列出任何书籍。我试过用以下方法刷新重写规则:
add_action('init', 'custom_taxonomy_flush_rewrite');
function custom_taxonomy_flush_rewrite() {
    global $wp_rewrite;
    $wp_rewrite->flush_rules();
}
和:
flush_rewrite_rules(false);
但似乎没什么帮助。
那么,有人可以帮助我吗?如果您需要更多信息,请告诉我,因为我真的很想解决这个问题!