我知道这是常见的问题。
首先我想说-我尝试:刷新重写,重置永久链接设置,删除.htacces
并使用永久链接设置再次创建,尝试:flush_rewrite_rules()
。
问题:自定义post_type显示404时使用永久链接设置-/%postname%/,没有工作很好,同样的问题是与内置的帖子!当我创建一个post_type -它工作,但当创建下一个-工作只有最后一个post类型添加,第一个post_type给出404。下面是我的Create post函数:
add_action( 'init', 'create_post_types', 0 );
function create_post_types() {
/***********************************
*
* Register post type - Svømming
*
***********************************/
$labels = array(
'name' => _x( 'Svømming', 'Post Type General Name', TD),
'singular_name' => _x( 'Svømming', 'Post Type Singular Name', TD ),
'menu_name' => __( 'Svømming', TD ),
'name_admin_bar' => __( 'Svømming', TD ),
);
$supports = array('title', 'editor', 'author', 'thumbnail', 'excerpt', 'revisions', 'page-attributes');
$args = array(
'label' => __( 'Svømming', TD ),
'description' => __( 'Svømming', TD ),
'labels' => $labels,
'supports' => $supports,
'hierarchical' => true,
'public' => true,
'show_ui' => true,
'show_in_menu' => true,
'menu_position' => 5,
'menu_icon' => THEMEURL.'/img/swimming2x2.svg',
'show_in_admin_bar' => true,
'show_in_nav_menus' => true,
'can_export' => true,
'has_archive' => false,
'exclude_from_search' => false,
'publicly_queryable' => true,
'rewrite' => array( 'slug' => '/' ),
'capability_type' => 'page',
);
register_post_type( 'svomming', $args );
/***********************************
*
* Register post type - Stup
*
***********************************/
$labels = array(
'name' => _x( 'Stup', 'Post Type General Name', TD),
'singular_name' => _x( 'Stup', 'Post Type Singular Name', TD ),
'menu_name' => __( 'Stup', TD ),
'name_admin_bar' => __( 'Stup', TD ),
);
$supports = array('title', 'editor', 'author', 'thumbnail', 'excerpt', 'revisions', 'page-attributes');
$args = array(
'label' => __( 'Stup', TD ),
'description' => __( 'Stup', TD ),
'labels' => $labels,
'supports' => $supports,
'hierarchical' => true,
'public' => true,
'show_ui' => true,
'show_in_menu' => true,
'menu_position' => 5,
'menu_icon' => THEMEURL.'/img/stup.svg',
'show_in_admin_bar' => true,
'show_in_nav_menus' => true,
'can_export' => true,
'has_archive' => false,
'exclude_from_search' => false,
'publicly_queryable' => true,
'rewrite' => array( 'slug' => '/' ),
'capability_type' => 'page',
);
register_post_type( 'stup', $args );
/* There will be 4 more post types */
}
这些帖子类型必须层次,和蛞蝓=> '/' 我完全不知道为什么会有这个问题:(
最奇怪的部分是-为什么只工作最后一个注册的帖子类型,为什么构建"帖子"不工作
问题是,您正在创建两个具有相同鼻涕虫的帖子类型。你应该更改。
'rewrite' => array( 'slug' => '/' ),
你不能有两个帖子类型与相同的塞格,所以改变其中一个的名称,不要忘记更新你的永久链接:去设置->永久链接和点击保存更改按钮在底部不改变任何设置,这将简单地更新永久链接表。这个就可以了。
使用不同的帖子名称。您创建的帖子类型不会从数据库中删除。所以用其他名字创建新的帖子类型。选择Post name的永久链接设置