diff --git a/wp-admin/edit-form-advanced.php b/wp-admin/edit-form-advanced.php index fae04faa5f..70e55d9f9e 100644 --- a/wp-admin/edit-form-advanced.php +++ b/wp-admin/edit-form-advanced.php @@ -16,57 +16,57 @@ if ( !defined('ABSPATH') ) * @var int */ $post_ID = isset($post_ID) ? (int) $post_ID : 0; - +$temp_ID = isset($temp_ID) ? (int) $temp_ID : 0; +$user_ID = isset($user_ID) ? (int) $user_ID : 0; $action = isset($action) ? $action : ''; +$messages = array(); +$messages['post'] = array( + '', + sprintf( __('Post updated. View post'), get_permalink($post_ID) ), + __('Custom field updated.'), + __('Custom field deleted.'), + __('Post updated.'), + isset($_GET['revision']) ? sprintf( __('Post restored to revision from %s'), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false, + sprintf( __('Post published. View post'), get_permalink($post_ID) ), + __('Post saved.'), + sprintf( __('Post submitted. Preview post'), add_query_arg( 'preview', 'true', get_permalink($post_ID) ) ), + // translators: Publish box date format, see http://php.net/date - Same as in meta-boxes.php + sprintf( __('Post scheduled for: %1$s. Preview post'), date_i18n( __( 'M j, Y @ G:i' ), strtotime( $post->post_date ) ), get_permalink($post_ID) ), + sprintf( __('Post draft updated. Preview post'), add_query_arg( 'preview', 'true', get_permalink($post_ID) ) ) +); +$messages['page'] = array( + '', + sprintf( __('Page updated. View page'), get_permalink($post_ID) ), + __('Custom field updated.'), + __('Custom field deleted.'), + sprintf( __('Page published. View page'), get_permalink($post_ID) ), + isset($_GET['revision']) ? sprintf( __('Page restored to revision from %s'), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false, + sprintf( __('Page submitted. Preview page'), add_query_arg( 'preview', 'true', get_permalink($post_ID) ) ), + // translators: Publish box date format, see http://php.net/date - Same as in meta-boxes.php + sprintf( __('Page scheduled for: %1$s. Preview page'), date_i18n( __( 'M j, Y @ G:i' ), strtotime( $post->post_date ) ), get_permalink($post_ID) ), + sprintf( __('Page draft updated. Preview page'), add_query_arg( 'preview', 'true', get_permalink($post_ID) ) ) +); + $message = false; if ( isset($_GET['message']) ) { $_GET['message'] = absint( $_GET['message'] ); - - switch ( $_GET['message'] ) { - case 1: - $message = sprintf( __('Post updated. View post'), get_permalink($post_ID) ); - break; - case 2: - $message = __('Custom field updated.'); - break; - case 3: - $message = __('Custom field deleted.'); - break; - case 4: - $message = __('Post updated.'); - break; - case 5: - if ( isset($_GET['revision']) ) - $message = sprintf( __('Post restored to revision from %s'), wp_post_revision_title( (int) $_GET['revision'], false ) ); - break; - case 6: - $message = sprintf( __('Post published. View post'), get_permalink($post_ID) ); - break; - case 7: - $message = __('Post saved.'); - break; - case 8: - $message = sprintf( __('Post submitted. Preview post'), add_query_arg( 'preview', 'true', get_permalink($post_ID) ) ); - break; - case 9: - // translators: Publish box date formt, see http://php.net/date - Same as in meta-boxes.php - $message = sprintf( __('Post scheduled for: %1$s. Preview post'), date_i18n( __( 'M j, Y @ G:i' ), strtotime( $post->post_date ) ), get_permalink($post_ID) ); - break; - case 10: - $message = sprintf( __('Post draft updated. Preview post'), add_query_arg( 'preview', 'true', get_permalink($post_ID) ) ); - break; - } + if ( isset($messages[$post_type][$_GET['message']]) ) + $message = $messages[$post_type][$_GET['message']]; + elseif ( !isset($messages[$post_type]) && isset($messages['post'][$_GET['message']]) ) + $message = $messages['post'][$_GET['message']]; } $notice = false; if ( 0 == $post_ID ) { $form_action = 'post'; + $nonce_action = 'add-' . $post_type; $temp_ID = -1 * time(); // don't change this formula without looking at wp_write_post() $form_extra = ""; $autosave = false; } else { $form_action = 'editpost'; + $nonce_action = 'update-' . $post_type . '_' . $post_ID; $form_extra = ""; $autosave = wp_get_post_autosave( $post_ID ); @@ -82,12 +82,18 @@ if ( 0 == $post_ID ) { } } +$post_type_object = get_post_type_object($post_type); +$post_type_cap = $post_type_object->capability_type; +$form_post = 'post.php'; +if ( 'page' == $post_type ) + $form_post = 'page.php'; + // All meta boxes should be defined and added before the first do_meta_boxes() call (or potentially during the do_meta_boxes action). require_once('includes/meta-boxes.php'); add_meta_box('submitdiv', __('Publish'), 'post_submit_meta_box', $post_type, 'side', 'core'); -// all tag-style post taxonomies +// all tag-style taxonomies foreach ( get_object_taxonomies($post_type) as $tax_name ) { if ( !is_taxonomy_hierarchical($tax_name) ) { $taxonomy = get_taxonomy($tax_name); @@ -99,14 +105,22 @@ foreach ( get_object_taxonomies($post_type) as $tax_name ) { if ( is_object_in_taxonomy($post_type, 'category') ) add_meta_box('categorydiv', __('Categories'), 'post_categories_meta_box', $post_type, 'side', 'core'); + +if ( post_type_supports($post_type, 'page-attributes') ) + add_meta_box('pageparentdiv', __('Attributes'), 'page_attributes_meta_box', $post_type, 'side', 'core'); + if ( current_theme_supports( 'post-thumbnails', $post_type ) && post_type_supports($post_type, 'post-thumbnails') ) add_meta_box('postimagediv', __('Post Thumbnail'), 'post_thumbnail_meta_box', $post_type, 'side', 'low'); + if ( post_type_supports($post_type, 'excerpts') ) add_meta_box('postexcerpt', __('Excerpt'), 'post_excerpt_meta_box', $post_type, 'normal', 'core'); + if ( post_type_supports($post_type, 'trackbacks') ) add_meta_box('trackbacksdiv', __('Send Trackbacks'), 'post_trackback_meta_box', $post_type, 'normal', 'core'); + if ( post_type_supports($post_type, 'custom-fields') ) add_meta_box('postcustom', __('Custom Fields'), 'post_custom_meta_box', $post_type, 'normal', 'core'); + do_action('dbx_post_advanced'); if ( post_type_supports($post_type, 'comments') ) add_meta_box('commentstatusdiv', __('Discussion'), 'post_comment_status_meta_box', $post_type, 'normal', 'core'); @@ -115,23 +129,22 @@ if ( ('publish' == $post->post_status || 'private' == $post->post_status) && pos add_meta_box('commentsdiv', __('Comments'), 'post_comment_meta_box', $post_type, 'normal', 'core'); if ( !( 'pending' == $post->post_status && !current_user_can( 'publish_posts' ) ) ) - add_meta_box('slugdiv', __('Post Slug'), 'post_slug_meta_box', $post_type, 'normal', 'core'); + add_meta_box('slugdiv', __('Slug'), 'post_slug_meta_box', $post_type, 'normal', 'core'); $authors = get_editable_user_ids( $current_user->id ); // TODO: ROLE SYSTEM if ( $post->post_author && !in_array($post->post_author, $authors) ) $authors[] = $post->post_author; if ( $authors && count( $authors ) > 1 ) - add_meta_box('authordiv', __('Post Author'), 'post_author_meta_box', $post_type, 'normal', 'core'); + add_meta_box('authordiv', __('Author'), 'post_author_meta_box', $post_type, 'normal', 'core'); if ( 0 < $post_ID && wp_get_post_revisions( $post_ID ) ) - add_meta_box('revisionsdiv', __('Post Revisions'), 'post_revisions_meta_box', $post_type, 'normal', 'core'); + add_meta_box('revisionsdiv', __('Revisions'), 'post_revisions_meta_box', $post_type, 'normal', 'core'); do_action('do_meta_boxes', $post_type, 'normal', $post); do_action('do_meta_boxes', $post_type, 'advanced', $post); do_action('do_meta_boxes', $post_type, 'side', $post); require_once('admin-header.php'); - ?>
@@ -143,16 +156,8 @@ require_once('admin-header.php');

-
- - + + @@ -169,9 +174,10 @@ echo $form_extra ?>
- - - +
@@ -184,7 +190,7 @@ echo $form_extra ?>
ID); -if ( !( 'pending' == $post->post_status && !current_user_can( 'publish_posts' ) ) ) { ?> +if ( !( 'pending' == $post->post_status && !current_user_can( 'publish_' . $post_type_cap . 's' ) ) ) { ?>
ID) && ! empty($sample_permalink_html) ) : @@ -230,7 +236,7 @@ wp_nonce_field( 'meta-box-order', 'meta-box-order-nonce', false ); ?> do_meta_boxes($post_type, 'normal', $post); -do_action('edit_form_advanced'); +( 'page' == $post_type ) ? do_action('edit_page_form') : do_action('edit_form_advanced'); do_meta_boxes($post_type, 'advanced', $post); diff --git a/wp-admin/edit-page-form.php b/wp-admin/edit-page-form.php deleted file mode 100644 index 056ec302d1..0000000000 --- a/wp-admin/edit-page-form.php +++ /dev/null @@ -1,211 +0,0 @@ -View page'), get_permalink($post_ID) ); - break; - case 2: - $message = __('Custom field updated.'); - break; - case 3: - $message = __('Custom field deleted.'); - break; - case 4: - $message = sprintf( __('Page published. View page'), get_permalink($post_ID) ); - break; - case 5: - if ( isset($_GET['revision']) ) - $message = sprintf( __('Page restored to revision from %s'), wp_post_revision_title( (int) $_GET['revision'], false ) ); - break; - case 6: - $message = sprintf( __('Page submitted. Preview page'), add_query_arg( 'preview', 'true', get_permalink($post_ID) ) ); - break; - case 7: - // translators: Publish box date formt, see http://php.net/date - Same as in meta-boxes.php - $message = sprintf( __('Page scheduled for: %1$s. Preview page'), date_i18n( __( 'M j, Y @ G:i' ), strtotime( $post->post_date ) ), get_permalink($post_ID) ); - break; - case 8: - $message = sprintf( __('Page draft updated. Preview page'), add_query_arg( 'preview', 'true', get_permalink($post_ID) ) ); - break; - } -} - -$notice = false; -if ( 0 == $post_ID) { - $form_action = 'post'; - $nonce_action = 'add-page'; - $temp_ID = -1 * time(); // don't change this formula without looking at wp_write_post() - $form_extra = ""; -} else { - $post_ID = (int) $post_ID; - $form_action = 'editpost'; - $nonce_action = 'update-page_' . $post_ID; - $form_extra = ""; - $autosave = wp_get_post_autosave( $post_ID ); - if ( $autosave && mysql2date( 'U', $autosave->post_modified_gmt, false ) > mysql2date( 'U', $post->post_modified_gmt, false ) ) - $notice = sprintf( __( 'There is an autosave of this page that is more recent than the version below. View the autosave.' ), get_edit_post_link( $autosave->ID ) ); -} - -$temp_ID = (int) $temp_ID; -$user_ID = (int) $user_ID; - -require_once('includes/meta-boxes.php'); - -$post_type = 'page'; - -add_meta_box('submitdiv', __('Publish'), 'post_submit_meta_box', 'page', 'side', 'core'); - -// all tag-style page taxonomies -foreach ( get_object_taxonomies('page') as $tax_name ) { - if ( !is_taxonomy_hierarchical($tax_name) ) { - $taxonomy = get_taxonomy($tax_name); - $label = isset($taxonomy->label) ? esc_attr($taxonomy->label) : $tax_name; - - add_meta_box('tagsdiv-' . $tax_name, $label, 'post_tags_meta_box', $post_type, 'side', 'core'); - } -} - -if ( post_type_supports($post_type, 'page-attributes') ) - add_meta_box('pageparentdiv', __('Attributes'), 'page_attributes_meta_box', $post_type, 'side', 'core'); -if ( post_type_supports($post_type, 'custom-fields') ) - add_meta_box('postcustom', __('Custom Fields'), 'post_custom_meta_box', $post_type, 'normal', 'core'); -if ( post_type_supports($post_type, 'comments') ) - add_meta_box('commentstatusdiv', __('Discussion'), 'post_comment_status_meta_box', $post_type, 'normal', 'core'); -add_meta_box('slugdiv', __('Page Slug'), 'post_slug_meta_box', $post_type, 'normal', 'core'); -if ( current_theme_supports( 'post-thumbnails', 'page' ) && post_type_supports($post_type, 'post-thumbnails') ) - add_meta_box('postimagediv', __('Page Image'), 'post_thumbnail_meta_box', $post_type, 'side', 'low'); - -$authors = get_editable_user_ids( $current_user->id, true, 'page' ); // TODO: ROLE SYSTEM -if ( $post->post_author && !in_array($post->post_author, $authors) ) - $authors[] = $post->post_author; -if ( $authors && count( $authors ) > 1 ) - add_meta_box('pageauthordiv', __('Page Author'), 'post_author_meta_box', $post_type, 'normal', 'core'); - -if ( 0 < $post_ID && wp_get_post_revisions( $post_ID ) ) - add_meta_box('revisionsdiv', __('Page Revisions'), 'post_revisions_meta_box', $post_type, 'normal', 'core'); - -do_action('do_meta_boxes', $post_type, 'normal', $post); -do_action('do_meta_boxes', $post_type, 'advanced', $post); -do_action('do_meta_boxes', $post_type, 'side', $post); - -require_once('admin-header.php'); -?> - -
- -

- - - -

- - -

- - - - - - - - - - - - -post_status ) wp_original_referer_field(true, 'previous'); ?> - -
- -
- -
- -
-
-
-
- - -
-
-ID); ?> -
-ID) && ! empty($sample_permalink_html) ) : - echo $sample_permalink_html; -endif; ?> -
-
-
- -
- -post_content); ?> - - - -
-   - -display_name ), mysql2date(get_option('date_format'), $post->post_modified), mysql2date(get_option('time_format'), $post->post_modified)); - } else { - printf(__('Last edited on %1$s at %2$s'), mysql2date(get_option('date_format'), $post->post_modified), mysql2date(get_option('time_format'), $post->post_modified)); - } - } -?> -
- - -
- - - -
-
-
- - -
- - diff --git a/wp-admin/page-new.php b/wp-admin/page-new.php index c73c7fcba8..984c2c3e53 100644 --- a/wp-admin/page-new.php +++ b/wp-admin/page-new.php @@ -8,6 +8,9 @@ /** WordPress Administration Bootstrap */ require_once('admin.php'); + +$post_type = 'page'; + $title = __('Add New Page'); $parent_file = 'edit-pages.php'; $editing = true; @@ -23,7 +26,7 @@ if ( current_user_can('edit_pages') ) { $action = 'post'; $post = get_default_page_to_edit(); - include('edit-page-form.php'); + include('edit-form-advanced.php'); } include('admin-footer.php'); diff --git a/wp-admin/page.php b/wp-admin/page.php index a4a928025f..f6ab7d9476 100644 --- a/wp-admin/page.php +++ b/wp-admin/page.php @@ -122,7 +122,8 @@ case 'edit': wp_enqueue_script('autosave'); } - include('edit-page-form.php'); + $post_type = $post->post_type; + include('edit-form-advanced.php'); break; case 'editattachment':