2017-07-10 68 views
0

我正在开发一个网站,我注册了一个自定义发布类型称为书和分类体裁。我想要一个永久链接像 www.mysite.com/genre_name/post_nameWordPress的永久链接结构taxonomy_termname/post_name

代码:

register_post_type('reviews', array(
    'label' => 'Books', 
    'description' => '', 
    'public' => true, 
    'show_ui' => true, 
    'show_in_menu' => true, 
    'capability_type' => 'page', 
    'hierarchical' => true, 
    'rewrite' => array('slug' => 'book'), 
    'query_var' => true, 
    'exclude_from_search' => false, 
    'supports' => array('title','editor','page-attributes', 'comments', 'author', 'revisions') 
    ) 
); 

我应该怎么办?任何帮助,将不胜感激。

+0

请分享您注册自定义后类型代码 –

+0

register_post_type( \t '评论', \t阵列(\t \t \t '标签'=> '图书', \t \t '描述'=> '', \t \t '公共'=>真, \t \t 'show_ui'=>真, \t \t 'show_in_menu'=>真, \t \t“capability_type '=> '页', \t \t '分层'=>真, \t \t '改写'=>数组(' 蛞蝓” => '书'), \t \t 'query_var'=>真, \t \t 'exclude_from_search'=>假, \t \t '支持'=>数组( \t \t \t '标题', '编辑', '页面的属性', '注释', '作者', '修改' \t \t) \t) ); –

+0

更新 - 我还创建了一个处理程序,它返回一个特定的URL。处理程序是使用post_type_link注册的。当我访问该页面时,它显示未找到页面。 –

回答

0

我找到了一种方法,为post_type_link和pre_get_posts创建自定义处理程序。

我准备网址作为我的客户期待使用post_type_link。

我添加了我想要的每个分类术语的重写规则。并冲洗规则。

这种方式有效。

1

虽然注册自定义后的类型,通过这个给定的参数

'rewrite'   => array('slug' => 'genre_name'), 

然后更新您的永久链接。这将重写段塞尔名称,而不是自定义帖子类型名称

+0

可以根据每个帖子动态地显示“genre_name”吗?最好是分配流派名称,而不是硬编码词“genre_name” –

+0

兄弟,我试过这段代码,它在URL中显示一个默认的单词。我们可以做到动态slu name的名字吗? –