我有一个注册分类法(wps_type)和2个自定义帖子类型(wps_business,wps_location)。注册的分类法已将重写arg设置为slug =>类型和帖子类型有slug =>商业与slug =>位置已经设定。我需要一个自定义智能固定链接重写规则,其中所有以下内容都可用。
默认工作(仍然需要工作):
http://domain.com/post-type/post-name => http://domain.com/business/post-name
http://domain.com/post-type/post-name => http://domain.com/location/post-name
http://domain.com/taxonomy/term-name => http://domain.com/type/term-name
但我需要的是:
http://domain.com/post-type/taxonomy => http://domain.com/location-post-name/type-term-name
所以我相信使用post_type_link过滤器可能无效,但我可能错了。这是我尝试过的一些代码:
add_rewrite_rule( '^directory/([^/]*)/([^/]*)/?', 'index.php?wps_location=$matches[1]&wps_business=$matches[2]', 'top' );
add_rewrite_tag( '%wps_location%', '([^/]+)' );
add_rewrite_tag( '%wps_business_types%', '([^&]+)' );
答案 0 :(得分:0)
不确定你是否找到了自己的答案,但我刚发现this article概述了如何做到这一点(尽管有一些警告)。此外,不确定这个答案是否会保留您提到的第三个永久链接结构:
http://domain.com/taxonomy/term-name => http://domain.com/type/term-name
我个人很少发现需要这种结构,但通常需要http://domain.com/post-type/tax/term
结构,因此该文章适用于我。