找不到自定义发布类型固定链接页面

时间:2014-11-24 作者:Cory Van Note

我一直在浪费时间试图用自定义帖子类型解决永久链接问题。它不断返回未找到的页面(404)。当我使用默认的永久链接时,它会工作,但当我切换到post name时,它会中断。我尝试过更改slug名称、刷新重写、禁用所有插件、一个“自定义post-type permalink”插件,但都没有成功。

有人有类似的问题吗?我使用的是WordPress的最新4.0.1版本,下面是我的函数代码。php:

function authors_post_type() {
    $labels = array(
        \'name\'              => _x(\'Authors\', \'post type general name\'),
        \'singular_name\'     => _x(\'Author\', \'post type singular name\'),
        \'add_new\'           => _x(\'Add New\', \'author\'),
        \'add_new_item\'      => __(\'Add New Author\'),
        \'edit_item\'         => __(\'Edit Author\'),
        \'new_item\'          => __(\'New Author\'),
        \'all_items\'         => __(\'All Authors\'),
        \'view_item\'         => __(\'View Author\'),
        \'search_items\'      => __(\'Search Authors\'),
        \'not_found\'         => __(\'No authors found\'),
        \'menu_name\'         => __(\'Authors\')
    );
    $args = array(
        \'labels\'             => $labels,
        \'public\'             => true,
        \'publicly_queryable\' => true,
        \'menu_position\'     => 5,
        \'show_ui\'            => true,
        \'show_in_menu\'       => true,
        \'query_var\'          => true,
        \'rewrite\'            => array( \'slug\' => \'authors\' ),
        \'capability_type\'    => \'post\',
        \'has_archive\'        => true,
        \'hierarchical\'       => true,
        \'menu_position\'      => null,
        \'supports\'           => array( \'title\', \'editor\', \'author\', \'thumbnail\' )
    );
    register_post_type(\'authors\', $args);
}
add_action(\'init\', \'authors_post_type\');

3 个回复
SO网友:vol4ikman

每次当你用代码创建新的帖子类型时(插件会自动这样做),你必须在设置-permalink上重建/更新你的permalink。

SO网友:Mayeenul Islam

您可以在register_post_type(\'authors\', $args); 行,它将刷新重写规则,可能您可以找到解决方案。

/**
*   To Activate Custom Post Type Single page
*   @see http://en.bainternet.info/2011/custom-post-type-getting-404-on-permalinks
*/
$set = get_option(\'post_type_rules_flased_authors\');
if ($set !== true){
   flush_rewrite_rules(false);
   update_option(\'post_type_rules_flased_authors\',true);
}

SO网友:Ankit Panchal

我用“创建作者自定义帖子类型”进行了检查。

我刚刚将permalink结构的post name更改为default,然后再次将default更改为post name。

工作正常。

你可以试试,如果你还面临这个问题,请告诉我。

结束

相关推荐

Custom permalinks structure

我希望有这样的结构:www.mysite.com/2013 (必须显示2013年的所有职位)www.mysite.com/my-category/2013 (必须显示2013年和“我的类别”类别的所有帖子)www.mysite.com/my-category/my-tag/ (必须显示所有类别为“我的类别”和标记为“我的标记”的帖子)www.mysite.com/my-category/ (必须显示“我的类别”类别的所有帖子)www.mysite.com/my-