我已经在互联网上看到过这个问题,但到目前为止没有任何东西对我有用。
理想情况下,我希望以下工作:
http://example.com/mortgage-brokers
<分类档案
http://example.com/mortgage-brokers/victoria
< 分类术语
http://example.com/mortgage-brokers/victoria/melbourne
< 二级分类术语
http://example.com/mortgage-brokers/victoria/melbourne/john-smith
<单个“帖子”
我将“自定义帖子类型永久链接”插件设置为/%broker_locations%/%postname%/
,并且我已将 CPT 和分类定义如下:
$args = array(
'label' => __('Brokers'),
'singular_label' => __('Broker'),
'public' => true,
'show_ui' => true,
'capability_type' => 'post',
'hierarchical' => false,
'query_var' => true,
'rewrite' => [
'hierarchical' => false,
'slug' => 'mortgage-brokers',
'with_front' => false
],
'supports' => array('title', 'editor', 'thumbnail', 'tag', 'comments'),
);
register_post_type( 'broker' , $args );
register_taxonomy(
'broker_locations',
'broker',
array(
'hierarchical' => true,
'label' => 'Broker locations',
'hierarchical' => true,
'rewrite' => array(
'hierarchical' => true,
'with_front' => false
)
)
);
使用上述配置,我可以让帖子永久链接正常工作,只要我不在分类定义中添加 slug 来“重写”,从而在 slug 中产生“broker_locations”,即:
http://example.com/mortgage-brokers/victoria/melbourne/john-smith
<作品
http://example.com/mortgage-brokers/victoria/melbourne
< 404s
http://example.com/mortgage-brokers/broker_locations/victoria/melbourne
<“有效”,但不是必需的
我还能够获得嵌套分类档案或发布永久链接以正常工作(取决于在functions.php中首先定义的),但另一个总是404。
有谁知道发生了什么?我无法相信这么简单的事情有多么困难。