public function stop_previewing_theme()
{
if (!$this->is_preview()) {
return;
}
$this->previewing = false;
if (!$this->is_theme_active()) {
remove_filter('template', array($this, 'get_template'));
remove_filter('stylesheet', array($this, 'get_stylesheet'));
remove_filter('pre_option_current_theme', array($this, 'current_theme'));
// @link: https://core.trac.wordpress.org/ticket/20027
remove_filter('pre_option_stylesheet', array($this, 'get_stylesheet'));
remove_filter('pre_option_template', array($this, 'get_template'));
// Handle custom theme roots.
remove_filter('pre_option_stylesheet_root', array($this, 'get_stylesheet_root'));
remove_filter('pre_option_template_root', array($this, 'get_template_root'));
}
/**
* Fires once the Customizer theme preview has stopped.
*
* @since 3.4.0
*
* @param WP_Customize_Manager $this WP_Customize_Manager instance.
*/
do_action('stop_previewing_theme', $this);
}