我的WordPress v6.1,我有一个自定义分类country
和常规posts
和pages
.
使用'rewrite' => array('slug' => '/', 'with_front' => FALSE)
,我得到的分类术语URL为www.example.com/taxonomy-term-name
,这很好。
但是有了上面的内容,我的常规帖子和页面返回错误/404。我想要的帖子和页面URL是www.example.com/contact
和www.example.com/my-blog-post
。
我已经尝试了register_taxonomy_args
和term_link
过滤器,但所有失败的职位和网页网址进入404错误。
1条答案
按热度按时间cngwdvgl1#
你没有用
'slug' => '/'
定义任何东西,本质上这是默认的post类型重写规则:他说:就像我在这里回答你:
在使用这种语法进行重写时,wordpress似乎有一个怪癖,所以你需要在这个术语前面加上一个前缀。
然后在
post_type_link
挂钩中使用return str_replace( 'country/%country%', $terms[0]->slug , $post_link );
。