我有一個問題,我以前見過被問過,但沒有答案解決了我的問題。這是我以前遇到過的,但從來沒有設法解決。WordPress的定製分類頁面
我有一個乾淨的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://本地主機/ WordPress的/書」 現在我想創建一個自定義分類,所以我在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'
)
)
);
}
以及分類顯示在管理頁面中,我可以添加新的術語,並將它們添加到書籍中。但現在出現了這個問題。我想讓我對所有書籍有一個概述,比方說,評價「很好」,我會去「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);
但是沒有什麼似乎幫助。
那麼,誰能幫助我?如果你需要更多的信息,請告訴,因爲我真的想解決這個問題!
你有沒有嘗試在http://wordpress.stackexchange.com/發佈? – Havelock
謝謝,馬上做到了。 – Crinsane