固定链接错误地插入多个类别

时间:2016-08-16 作者:gravy

因此,我最近将我的站点和主题更新为wp 4.5.3(en-GB),并移植了旧站点/主题的内容(它已经过时了)。

该网站有4000\'ish帖子,有自定义的帖子类型和分类。

大多数内容以默认的帖子类型保存,分类法“类别”是按层次设置的。

通常,URL生成为http://example.com/food/postname 哪里food 是顶级标签,帖子可能有几个子标签(水果、油炸等)。

然而,自从更新以来,Wordpress生成了无效的URL,例如http://example.com/food/fruits/postname 基于上述示例,未找到。

在普通的Wordpress安装中无法做到这一点,但我可以知道在我的主题或插件中从哪里开始查找。

分类定义为(其中POSTTYPE_PLACES etc是与我的Wordpress主题中的帖子类型相关联的名称)。。。

<?php
register_taxonomy(    
    \'category\',
    array(
        POSTTYPE_PLACES,
        POSTTYPE_EDITORIAL, 
        POSTTYPE_CUSTOMSECTIONS,
        POSTTYPE_PAGE ),
    array(
        \'label\' => __(\'Category\'),
        \'labels\' => $labels,
        \'hierarchical\' => true,
        \'show_ui\' => true,
        \'show_admin_column\' => true,
        \'query_var\' => true,
        \'rewrite\' => array( 
            \'slug\' => \'\',
            \'hierarchical\' => false,
            \'with_front\' => false
        )
    )
);
我有一个自定义的permalink结构/%category%/%postname%/ 在设置->永久链接中。我更新了permalink规则,但一点用都没有。

1 个回复
SO网友:gravy

看起来它试图创建一个名为category 这导致了奇怪的行为,将此代码撕掉就成功了,尽管有些重写规则对于使分页的归档页正常工作是必要的。

相关推荐

为什么<?PHPECHO GET_TEMPLATE_DIRECTORY_URI()?>仍然输出/wp-Content/Themes/twentynineteen?

我开发了一些219个儿童模板。今天,我需要转换my last child-template 进入一个独立的模板中。我从样式中删除了以下行。css文件:Template: twentynineteen 并在我的函数中添加了几行。php文件:if ( ! function_exists( \'oripeau_setup\' ) ) : function oripeau_setup() { load_theme_textdomain( \'oripeau\', get_temp