admin_url( 'admin-ajax.php' ), 'nonce' => wp_create_nonce( 'p2_preferences' ), ] ); } public static function can_show_view_selector() { return ! ( defined( 'REST_API_REQUEST' ) && REST_API_REQUEST ) && ! is_admin() && ! is_single() && ! is_page() && ! is_404() && ! Compact_View::is_default_mode_only(); } public static function get_active_view_mode() { if ( Compact_View::is_compact_view_enabled() ) { return 'compact'; } if ( Compact_View::is_expanded_view_enabled() ) { return 'expanded'; } return 'default'; } public static function get_view_modes() { $modes = []; $modes['default'] = [ 'label' => _x( 'Default', 'Posts display mode', 'p2020' ), 'description' => __( 'Show posts', 'p2020' ), ]; $modes['expanded'] = [ 'label' => _x( 'Expanded', 'Posts display mode', 'p2020' ), 'description' => __( 'Show posts and comments', 'p2020' ), ]; $modes['compact'] = [ 'label' => _x( 'Compact', 'Posts display mode', 'p2020' ), 'description' => __( 'Simplified and condensed', 'p2020' ), ]; return $modes; } public static function print_view_selector() { $active_view_mode = self::get_active_view_mode(); get_template_part( 'partials/menus/view-selector', 'view-selector', [ 'view_modes' => self::get_view_modes(), 'active_view_mode' => $active_view_mode, 'hide_view_selector' => ! self::can_show_view_selector(), ] ); } }