使用连字符 (-) 来分隔自定义分类法和自定义帖子类型中的单词是一种不好的做法。您不应该在分类/自定义帖子类型名称中使用任何特殊字符、数字或大写字母,因为它们在以后命名自定义模板时非常麻烦。这些破坏了模板层次结构,任何定制的模板都将被忽略。你可以自己去尝试一下。只能使用下划线 (_)。
我总是尝试在分类和帖子类型名称中使用单个单词,因为它们在此类情况下不太容易失败。使用起来也更清洁。
为了保持你所追求的 URL 结构,你应该创建一个自定义的重写规则来为你处理它
编辑
这是为您的主题添加自定义分类和自定义帖子类型的代码。只需将其添加到您的functions.php 中。去玩弄代码
function event_post_example() {
register_post_type( 'event_type',
array(
'labels' => array(
'name' => __('Events Posts', 'baretheme'),
'singular_name' => __('Event Post', 'baretheme'),
'all_items' => __('All Event Posts', 'baretheme'),
'add_new' => __('Add New Event Post', 'baretheme'),
'add_new_item' => __('Add New Event Type', 'baretheme'),
'edit' => __( 'Edit', 'baretheme' ),
'edit_item' => __('Edit Post Types', 'baretheme'),
'new_item' => __('New Post Type', 'baretheme'),
'view_item' => __('View Post Type', 'baretheme'),
'search_items' => __('Search Post Type', 'baretheme'),
'not_found' => __('Nothing found in the Database.', 'baretheme'),
'not_found_in_trash' => __('Nothing found in Trash', 'baretheme'),
'parent_item_colon' => ''
), /* end of arrays */
'description' => __( 'This is the example event post type', 'baretheme' ), /* Custom Type Description */
'public' => true,
'publicly_queryable' => true,
'postids_from_search' => false,
'show_ui' => true,
'query_var' => true,
'menu_position' => 9,
'menu_icon' => get_stylesheet_directory_uri() . '/library/images/custom-post-icon.png',
'rewrite' => array( 'slug' => 'event_type', 'with_front' => false ),
'has_archive' => 'event_type',
'capability_type' => 'post',
'hierarchical' => false,
'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'trackbacks', 'custom-fields', 'comments', 'revisions', 'sticky')
) /* end of options */
); /* end of register post type */
register_taxonomy( 'event_cat','event_type',
array(
'labels' => array(
'name' => __( 'Event Categories', 'baretheme' ),
'singular_name' => __( 'Event Category', 'baretheme' ),
'search_items' => __( 'Search Event Categories', 'baretheme' ),
'all_items' => __( 'All Event Categories', 'baretheme' ),
'parent_item' => __( 'Parent Event Category', 'baretheme' ),
'parent_item_colon' => __( 'Parent Event Category:', 'baretheme' ),
'edit_item' => __( 'Edit Event Category', 'baretheme' ),
'update_item' => __( 'Update Event Category', 'baretheme' ),
'add_new_item' => __( 'Add New Event Category', 'baretheme' ),
'new_item_name' => __( 'New Event Category Name', 'baretheme' )
),
'hierarchical' => true,
'show_admin_column' => true,
'show_ui' => true,
'query_var' => true,
'rewrite' => array( 'slug' => 'event-slug' ),
)
);
register_taxonomy_for_object_type( 'event_cat', 'event_type' );
}
add_action( 'init', 'event_post_example');