重写默认存档的url/固定链接-每年/每月

时间:2013-09-28 作者:TheDeveloper

我想更改默认帖子类型的年度/月度存档URL的结构\'post\'.

正如我们所知,默认URL如下所示:

默认值:http://wwww.domain.com/2013/09

但是想要重写它们,所以就这样结束:

新建:http://wwww.domain.com/about/blog/archive/2013/09

我尝试了以下内容,但似乎确实有效:

add_rewrite_rule("about/blog/archive/([0-9]{4})/([0-9]{2})/page/?([0-9]{1,})/?",\'index.php?post_type=post&year=$matches[1]&monthnum=$matches[2]&paged=$matches[3]\',\'top\');

add_rewrite_rule("about/blog/archive/([0-9]{4})/([0-9]{2})/?",\'index.php?post_type=post&year=$matches[1]&monthnum=$matches[2]\',\'top\');

add_rewrite_rule("about/blog/archive/([0-9]{4})/page/?([0-9]{1,})/?",\'index.php?post_type=post&year=$matches[1]&paged=$matches[2]\',\'top\');

add_rewrite_rule("about/blog/archive/([0-9]{4})/?",\'index.php?post_type=post&year=$matches[1]\',\'top\');
我想有人指出正确的方向,需要更多信息,请留下评论。

谢谢

1 个回复
最合适的回答,由SO网友:Milo 整理而成

通过更改$date_structure$wp_rewrite 的实例WP_Rewrite 类别:

function wpa116030_init(){
    global $wp_rewrite;
    $wp_rewrite->date_structure = \'about/blog/archive/%year%/%monthnum%/%day%\';
}
add_action( \'init\', \'wpa116030_init\' );
添加此代码后,请访问Permalinks设置页面以刷新重写规则。

结束

相关推荐

old permalinks not found

通过Google网站管理员工具查看,我有很多404个永久链接结构为/%年%/%月%/%日%/%postname%的帖子/此后,我将永久链接更改为/%类别%/%postname%。html我原以为Wordpress可以将旧的帖子URL重定向到新的帖子URL,但旧的基于日期的URL正在生成404。我的htaccess文件可写,设置为644。为什么会发生这种情况?谢谢