WP_Screen::render_view_mode
Renders the list table view mode preferences.
Method of the class: WP_Screen{}
Hooks from the method
Returns
null. Nothing (null).
Usage
$WP_Screen = new WP_Screen(); $WP_Screen->render_view_mode();
Notes
- Global. String.
$modeList table view mode.
Changelog
| Since 4.4.0 | Introduced. |
WP_Screen::render_view_mode() WP Screen::render view mode code WP 6.9.1
<?php
public function render_view_mode() {
global $mode;
$screen = get_current_screen();
// Currently only enabled for posts and comments lists.
if ( 'edit' !== $screen->base && 'edit-comments' !== $screen->base ) {
return;
}
$view_mode_post_types = get_post_types( array( 'show_ui' => true ) );
/**
* Filters the post types that have different view mode options.
*
* @since 4.4.0
*
* @param string[] $view_mode_post_types Array of post types that can change view modes.
* Default post types with show_ui on.
*/
$view_mode_post_types = apply_filters( 'view_mode_post_types', $view_mode_post_types );
if ( 'edit' === $screen->base && ! in_array( $this->post_type, $view_mode_post_types, true ) ) {
return;
}
if ( ! isset( $mode ) ) {
$mode = get_user_setting( 'posts_list_mode', 'list' );
}
// This needs a submit button.
add_filter( 'screen_options_show_submit', '__return_true' );
?>
<fieldset class="metabox-prefs view-mode">
<legend><?php _e( 'View mode' ); ?></legend>
<label for="list-view-mode">
<input id="list-view-mode" type="radio" name="mode" value="list" <?php checked( 'list', $mode ); ?> />
<?php _e( 'Compact view' ); ?>
</label>
<label for="excerpt-view-mode">
<input id="excerpt-view-mode" type="radio" name="mode" value="excerpt" <?php checked( 'excerpt', $mode ); ?> />
<?php _e( 'Extended view' ); ?>
</label>
</fieldset>
<?php
}