我有一些Wordpress CPT。他们正确的URL应该是/ wordpress / training / training-page /,这就是我在管理页面中看到的URL,但当我点击链接时,我最终得到的URL是/ wordpress / blog / 2010/05/21 /培训页/.
我停用了我的插件但没有成功。有谁知道如何保持正确的URL完整无缺?
这是我的代码:
<?php
add_action( 'init', 'tv_content_posttype' );
function tv_content_posttype() {
register_taxonomy('content',
'training',
array(
'hierarchical' => true,
'label' => 'Content Index',
'query_var' => true,
'rewrite' => true
)
);
register_post_type( 'training',
array(
'type' => 'page',
'labels' => array(
'name' => __( 'TV Training' ),
'singular_name' => __( 'TV Training' )
),
'public' => true,
'rewrite' => array(
'with_front' => false,
'slug' => 'training',
),
'hierarchical' => true,
'query_var' => true,
'taxonomies' => array( 'content' ),
)
);
}
答案 0 :(得分:1)
只是一些观察:'type'
没有register_post_type()
参数这样的东西,所以你可以摆脱那条线。其次,'with_front' => false
告诉WordPress网址结构应为/training/training-page/
。 /wordpress/
在这个意义上是你要告诉它的“前线”部分。此外,您不需要为post_type添加“分类法”,但在注册分类法之前,您需要注册帖子类型。所以试试这个:
<?php
add_action( 'init', 'tv_content_posttype' );
function tv_content_posttype() {
register_post_type( 'training',
array(
'labels' => array(
'name' => __( 'TV Training' ),
'singular_name' => __( 'TV Training' )
),
'public' => true,
'rewrite' => array(
'with_front' => true,
'slug' => 'training',
),
'hierarchical' => true,
'query_var' => true,
)
);
register_taxonomy('content',
'training',
array(
'hierarchical' => true,
'label' => 'Content Index',
'query_var' => true,
'rewrite' => true
)
);
}