我按顺序有一个注册分类法(wps_type)和 2 个自定义帖子类型(wps_business、wps_location)。已注册的分类法已将重写 arg 设置为 slug => type,并且帖子类型已设置 slug => business & slug => location。我需要一个自定义的智能永久链接重写规则,其中所有以下内容都可用。
默认值工作(并且仍然需要工作):
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%', '([^&]+)' );