默认帖子选项卡在管理栏中显示两次

时间:2015-08-20 作者:Chamal Chamikara

我必须重新注册WordPress的默认帖子类型才能将帖子slug更改为“blog”,更改permalink结构对我来说不起作用,因为它还会重写自定义帖子类型slug。所以我在我的function.php:

function my_new_default_post_type() {
register_post_type( \'post\', array(
    \'labels\' => array(
        \'name_admin_bar\' => _x( \'Post\', \'add new on admin bar\' ),
    ),
    \'public\'  => true,
    \'_builtin\' => false,
    \'_edit_link\' => \'post.php?post=%d\',
    \'capability_type\' => \'post\',
    \'map_meta_cap\' => true,
    \'hierarchical\' => false,
    \'rewrite\' => array( \'slug\' => \'blog\' ),
    \'query_var\' => false,
    \'supports\' => array( \'title\', \'editor\', \'author\', \'thumbnail\', \'excerpt\', \'trackbacks\', \'custom-fields\', \'comments\', \'revisions\', \'post-formats\' ),
) );
flush_rewrite_rules();
}
add_action( \'init\', \'my_new_default_post_type\', 1 );
它工作得很好,满足了我的需要。但现在的问题是,它在管理栏中两次显示“post”项。为什么会这样?

1 个回复
SO网友:Ajith

您可以尝试取消注册/取消设置默认帖子类型,并根据需要注册帖子类型。

if ( ! function_exists( \'unset_default_post\' ) ) :
function unset_default_post( ) {
    global $wp_post_types;
    $post_type = \'post\';
    if ( isset( $wp_post_types[ $post_type ] ) ) {
        unset( $wp_post_types[ $post_type ] );
        return true;
    }
    return false;
}
endif;

结束

相关推荐

ADD_TIME_SUPPORT(‘admin-bar’)导致致命错误

我正在努力学习更多关于主题开发的知识,所以我创建了自己的主题,除了添加functions.php 并尝试用一些简单的方法进行更新,如:<?php add_theme_support(\'admin-bar\', array(\'menus\')); ?> 我明白了Server 500 ERROR 我无法访问Wordpress的任何部分,甚至连仪表板都无法访问。但一旦我删除functions.php 和刷新页面我的Wordpress又回来了,工作顺利。有什么神秘的fu