Long answer:
Peeking into wp-includes/js/media-models.js, I see this:
if ( 'select' === attributes.frame && MediaFrame.Select ) {
frame = new MediaFrame.Select( attributes );
} else if ( 'post' === attributes.frame && MediaFrame.Post ) {
frame = new MediaFrame.Post( attributes );
} else if ( 'manage' === attributes.frame && MediaFrame.Manage ) {
frame = new MediaFrame.Manage( attributes );
} else if ( 'image' === attributes.frame && MediaFrame.ImageDetails ) {
frame = new MediaFrame.ImageDetails( attributes );
} else if ( 'audio' === attributes.frame && MediaFrame.AudioDetails ) {
frame = new MediaFrame.AudioDetails( attributes );
} else if ( 'video' === attributes.frame && MediaFrame.VideoDetails ) {
frame = new MediaFrame.VideoDetails( attributes );
} else if ( 'edit-attachments' === attributes.frame && MediaFrame.EditAttachments ) {
frame = new MediaFrame.EditAttachments( attributes );
}
So one is lead to believe you could do this:
var frame = wp.media.frames.frame = wp.media({
title: 'Select Image',
button: { text: 'Select' },
multiple: false,
frame: 'edit-attachments',
controller: {
gridRouter: {}
}
});
frame.open();
But it won't work.
The first trouble you meet is that some script is required. This can be dealt with like this:
add_action( 'admin_enqueue_scripts', function() {
wp_enqueue_media();
wp_enqueue_script( 'media-grid' );
wp_enqueue_script( 'media' );
});
But still no cigar.
The problem can be found in wp-includes/js/media-grid.js:
EditAttachments = MediaFrame.extend({
initialize: function() {
this.controller = this.options.controller;
this.gridRouter = this.controller.gridRouter;
This shows that EditAttachments requires a controller provided in the options, and this controller must have property "gridRouter". So something like this:
var frame = wp.media.frames.frame = wp.media({
frame: 'edit-attachments',
controller: {
gridRouter: {}
}
});
But this won't work, because you need a valid gridRouter.
This is all related to the underlying grid.
To learn more about the wp.media, I can recommend this plugin:
https://github.com/ericandrewlewis/wp-media-javascript-guide
And of course, there is this page:
https://codex.wordpress.org/Javascript_Reference/wp.media
Related questions: