# desktop-mode/1.1.9/includes/framework/app/wordpress/class-settings.php

OpenStation: Desktop Windows, Dock &amp; Virtual Desktops for WP Admin, version 1.1.9. 36 lines.

- Page: https://pluginprobe.com/plugins/desktop-mode/1.1.9/code/includes/framework/app/wordpress/class-settings.php
- Raw: https://pluginprobe.com/plugins/desktop-mode/1.1.9/raw/includes/framework/app/wordpress/class-settings.php
- Modified: 2026-09-04T15:30:56+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/desktop-mode/1.1.9/code/includes/framework/app/wordpress/class-settings.php#L10-L20`.

```php
<?php
/**
 * OpenStation App Framework — WordPress Settings adapter.
 *
 * User preferences come from the OpenStation Preferences blob
 * (`openstation_get_os_settings()`), site options from `get_option()`.
 *
 * @package OpenStation
 */

namespace OpenStation\App\WordPress;

use OpenStation\App\Contracts\Settings as SettingsContract;

defined( 'ABSPATH' ) || exit;

/**
 * OpenStation Preferences + site options.
 */
final class Settings implements SettingsContract {

	/** {@inheritDoc} */
	public function user_preference( $key, $fallback = null ) {
		if ( ! function_exists( 'openstation_get_os_settings' ) ) {
			return $fallback;
		}
		$settings = openstation_get_os_settings( get_current_user_id() );
		return is_array( $settings ) && array_key_exists( $key, $settings ) ? $settings[ $key ] : $fallback;
	}

	/** {@inheritDoc} */
	public function site_option( $key, $fallback = null ) {
		return get_option( (string) $key, $fallback );
	}
}

```
