我使用新闻的默认自定义帖子类型,结果是网址:
myurl.com/news/news-item-title
太好了,这就是我想要的。我也知道我可以创建自定义帖子类型并使用'with_front' => false
来实现:
myurl.com/news/news-item-title
和myurl.com/customposttype/customposttype-title
但是,我想要做的是在同一个父网址下分组多个自定义帖子类型,例如:
myurl.com/parenturl/customposttype1/customposttype1-title
myurl.com/parenturl/customposttype2/customposttype2-title
myurl.com/parenturl/customposttype3/customposttype3-title
这可能吗?如果是这样,怎么样?
非常感谢。
答案 0 :(得分:0)
将以下代码插入主题functions.php文件
add_action('init','add_rewrite_rules');
function add_rewrite_rules() {
add_rewrite_rule(
'parenturl/customposttype1/customposttype1-([^/]+)?$',
'index.php?post_type=customposttype1&name=$matches[1]',
'top'
);
add_rewrite_rule(
'parenturl/customposttype2/customposttype2-([^/]+)?$',
'index.php?post_type=customposttype2&name=$matches[1]',
'top'
);
add_rewrite_rule(
'parenturl/customposttype3/customposttype3-([^/]+)?$',
'index.php?post_type=customposttype3&name=$matches[1]',
'top'
);
}
这基本上为您创建了自定义重写规则,用于查找自定义帖子类型并将帖子名称与正则表达式相匹配。
添加此代码后,您还需要Flush your rewrite rules。