Wordpress 3.3-scripts
[autoinstalls/wordpress.git] / wp-admin / post-new.php
index 20374efa08ba45382e385f5e69e507ee98cc5bd6..a5d74e8b5be9d821d27864303a32c6d18ac79b55 100644 (file)
@@ -16,16 +16,22 @@ elseif ( in_array( $_GET['post_type'], get_post_types( array('show_ui' => true )
 else
        wp_die( __('Invalid post type') );
 
-if ( 'post' != $post_type ) {
-       $parent_file = "edit.php?post_type=$post_type";
-       $submenu_file = "post-new.php?post_type=$post_type";
-} else {
+$post_type_object = get_post_type_object( $post_type );
+
+if ( 'post' == $post_type ) {
        $parent_file = 'edit.php';
        $submenu_file = 'post-new.php';
+} else {
+       $submenu_file = "post-new.php?post_type=$post_type";
+       if ( isset( $post_type_object ) && $post_type_object->show_in_menu && $post_type_object->show_in_menu !== true ) {
+               $parent_file = $post_type_object->show_in_menu;
+               if ( ! isset( $_registered_pages[ get_plugin_page_hookname( "post-new.php?post_type=$post_type", $post_type_object->show_in_menu ) ] ) )
+                       $submenu_file = $parent_file;
+       } else {
+               $parent_file = "edit.php?post_type=$post_type";
+       }
 }
 
-$post_type_object = get_post_type_object($post_type);
-
 $title = $post_type_object->labels->add_new_item;
 
 $editing = true;