How To Make Meta Box Appear Above Editor In WordPress

This should be a relatively simple task to achieve in most scenarios, there are circumstances where it is not. This guide will show you what you need to do to make custom meta boxes appear above the default WordPress editor in the admin area.

When you are adding a new meta box to the post editor in admin, setting the context to advanced will give it priority over the other meta boxes, making it show up at the top. The code below will show you how to do this.

add_meta_box('test', __('test'), 'test', 'post', 'advanced');

The problem you may sometimes encounter is that using the advanced argument does nothing to alter the order in which the boxes appear. There is a simple change you can make if you want this meta field to appear above the main wordpress editor. The code below will force wordpress to push out the advanced meta boxes early. This will mean they will appear at the very top of the new post and edit post form.

add_action('edit_form_after_title', function() {
    global $post, $wp_meta_boxes;
    do_meta_boxes(get_current_screen(), 'advanced', $post);
    unset($wp_meta_boxes[get_post_type($post)]['advanced']);
});

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.