如果其他人正在寻找它,这里有一个马太答案的变体(它工作得很好)来实现这一点:
博客存档:/blog/
博客类别:/blog/category-name/
博客帖子:/blog/category-name/post-name/
add_action( \'generate_rewrite_rules\', \'add_blog_rewrites\' );
function add_blog_rewrites( $wp_rewrite ) {
$wp_rewrite->rules = array(
\'blog/([^/]+)/?$\' => \'index.php?taxonomy=category&term=$matches[1]\',
\'blog/([^/]+)/page/([0-9]+)/?$\' => \'index.php?taxonomy=category&term=$matches[1]&paged=$matches[2]\',
\'blog/[^/]+/([^/0-9]+)/?$\' => \'index.php?name=$matches[1]\',
\'blog/[^/]+/[^/]+/attachment/([^/]+)/?$\' => \'index.php?attachment=$matches[1]\',
\'blog/[^/]+/[^/]+/attachment/([^/]+)/trackback/?$\' => \'index.php?attachment=$matches[1]&tb=1\',
\'blog/[^/]+/[^/]+/attachment/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\' => \'index.php?attachment=$matches[1]&feed=$matches[2]\',
\'blog/[^/]+/[^/]+/attachment/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\' => \'index.php?attachment=$matches[1]&feed=$matches[2]\',
\'blog/[^/]+/[^/]+/attachment/([^/]+)/comment-page-([0-9]{1,})/?$\' => \'index.php?attachment=$matches[1]&cpage=$matches[2]\',
\'blog/[^/]+/([^/]+)/trackback/?$\' => \'index.php?name=$matches[1]&tb=1\',
\'blog/[^/]+/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\' => \'index.php?name=$matches[1]&feed=$matches[2]\',
\'blog/[^/]+/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\' => \'index.php?name=$matches[1]&feed=$matches[2]\',
\'blog/[^/]+/([^/]+)/[^/]+/page/?([0-9]{1,})/?$\' => \'index.php?name=$matches[1]&paged=$matches[2]\',
\'blog/[^/]+/([^/]+)/comment-page-([0-9]{1,})/?$\' => \'index.php?name=$matches[1]&cpage=$matches[2]\',
\'blog/[^/]+/([^/]+)/[^/]+(/[0-9]+)?/?$\' => \'index.php?name=$matches[1]&page=$matches[2]\',
\'blog/[^/]+/[^/]+/([^/0-9]+)/?$\' => \'index.php?attachment=$matches[1]\',
\'blog/[^/]+/[^/]+/trackback/?$\' => \'index.php?attachment=$matches[1]&tb=1\',
\'blog/[^/]+/[^/]+/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\' => \'index.php?attachment=$matches[1]&feed=$matches[2]\',
\'blog/[^/]+/[^/]+/([^/])+/(feed|rdf|rss|rss2|atom)/?$\' => \'index.php?attachment=$matches[1]&feed=$matches[2]\',
\'blog/[^/]+/[^/]+/([^/]+)/comment-page-([0-9]{1,})/?$\' => \'index.php?attachment=$matches[1]&cpage=$matches[2]\'
) + $wp_rewrite->rules;
}
使用
/%category%/%postname%/
对于permalink结构和类别链接:
function filter_category_link($permalink, $term) {
if($term->taxonomy !== \'category\') {
return $permalink;
}
return \'blog\' . str_replace(\'category/\', \'\', $permalink);
}
add_filter(\'pre_term_link\', \'filter_category_link\', 10, 2);