We'll create fresh WordPress site with Customizer Responsive Server-Side Components Device Preview installed. You have 20 minutes to test the plugin after that site we'll be deleted.
Read full writeup: Previewing Themes with Adaptive Designs in the Customizer.
This plugin extends the responsive device preview functionality in the customizer which was added in 4.5 (see #31195). In core when you change the previewed device it merely changes the dimensions of the preview, allowing you to simulate how the theme will appear on tablet or mobile screens. What it does not do, however, is cause the preview to reload with the User-Agent
overridden for the current device being previewed. For themes that implement a responsive design this core behavior is just fine since changing the dimensions of the iframe will cause the appropriate media queries to apply. However, if you have an adaptive design for your theme you won’t be able to see any server-side components that it may display when viewing a different device. For example, on mobile devices a theme may want to skip outputting the sidebar altogether to save on bandwidth.
This plugin will ensure that the preview is refreshed when the previewed device is changed in addition to changing the preview window size. It will pass a customize_previewed_device
query parameter on the URL being previewed, and this parameter will be either desktop
, tablet
, or mobile
. The plugin will override the $_SERVER['HTTP_USER_AGENT']
to be a user agent representative of the supplied device type so that calls to wp_is_mobile()
, jetpack_is_mobile()
, and Jetpack_User_Agent_Info::is_tablet()
will all return the expected values based on the current previewed device.
Development of this plugin is done on GitHub. Pull requests welcome. Please see issues reported there before going to the plugin forum.