/** * @see WP_Widget::is_preview() */ function test_wp_widget_is_preview() { global $wp_customize; $widget = new WP_Widget('foo', 'Foo'); $this->assertEmpty($wp_customize); $this->assertFalse($widget->is_preview()); wp_set_current_user($this->factory->user->create(array('role' => 'administrator'))); require_once ABSPATH . WPINC . '/class-wp-customize-manager.php'; $wp_customize = new WP_Customize_Manager(); $wp_customize->start_previewing_theme(); $this->assertTrue($widget->is_preview()); }
/** * Determine if the widget is being displayed in the customizer. * * @since 4.0.1 * @link https://core.trac.wordpress.org/ticket/27538 * * @return bool */ public function is_preview() { global $wp_customize; if (method_exists(get_parent_class($this), 'is_preview')) { return parent::is_preview(); } return isset($wp_customize) && $wp_customize->is_preview(); }