编辑:已移至new post on wordpress.stackexchange.com
挑剔的客户希望他们的URls以非常具体的方式设置。他们使用“日期和名称”预设作为永久链接结构,即/%year%/%monthnum%/%day%/%postname%/
。但是,他们希望所有博文都使用/blog/%year%/%monthnum%/%day%/%postname%/
。我不能只将其作为永久链接结构输入,因为它还会在其新闻帖子中添加/blog/
。
一点背景......他们的类别设置如下:
假设新闻文章的网址为http://www.example.com/2012/03/20/todays-news
。他们不希望URL中有/news/
(但如果必须这样,他们可以使用它)。
我们还要说几篇博文的网址是:
http://www.example.com/2012/01/01/new-year
http://www.example.com/2012/02/14/valentines-day
http://www.example.com/2012/02/29/leap-year
http://www.example.com/2012/03/01/march-madness
乍一看,简单的解决方案是将固定链接结构设置为/%category%/%year%/%monthnum%/%day%/%postname%/
,然后只处理/ news /在那里发布新闻帖子。但是,如果上述每篇博文分别位于博客子类别A,B,C和D中,那么我们最终会以
http://www.example.com/blog/blog-subcategory-a/2012/01/01/new-year
而不是
http://www.example.com/blog/2012/01/01/new-year
任何见解都会非常感激,因为我很难过。我想也许add_permastruct
可以提供帮助,但Wordpress Codex
我也在创建一个新的分类法,但我不确定这是否会成为我想要的东西。分类法出现在帖子中,但是,我无法弄清楚是否有办法将其添加到URL。这是我注册博客分类的代码:
function ak_blog_init()
{
// Create a new taxonomy
register_taxonomy(
'blog',
'post',
array(
'label' => __('Blog'),
'sort' => true,
'args' => array('orderby'=>'term_order'),
'rewrite' => array('slug'=>'blog')
)
);
}
add_action('init', 'ak_blog_init');