WP_Customize_Manager::start_previewing_theme()publicWP 3.4.0

If the theme to be previewed isn't the active theme, add filter callbacks to swap it out at runtime.

Метод класса: WP_Customize_Manager{}

Хуки из метода

Возвращает

null. Ничего (null).

Использование

$WP_Customize_Manager = new WP_Customize_Manager();
$WP_Customize_Manager->start_previewing_theme();

Список изменений

С версии 3.4.0 Введена.

Код WP_Customize_Manager::start_previewing_theme() WP 6.5.2

public function start_previewing_theme() {
	// Bail if we're already previewing.
	if ( $this->is_preview() ) {
		return;
	}

	$this->previewing = true;

	if ( ! $this->is_theme_active() ) {
		add_filter( 'template', array( $this, 'get_template' ) );
		add_filter( 'stylesheet', array( $this, 'get_stylesheet' ) );
		add_filter( 'pre_option_current_theme', array( $this, 'current_theme' ) );

		// @link: https://core.trac.wordpress.org/ticket/20027
		add_filter( 'pre_option_stylesheet', array( $this, 'get_stylesheet' ) );
		add_filter( 'pre_option_template', array( $this, 'get_template' ) );

		// Handle custom theme roots.
		add_filter( 'pre_option_stylesheet_root', array( $this, 'get_stylesheet_root' ) );
		add_filter( 'pre_option_template_root', array( $this, 'get_template_root' ) );
	}

	/**
	 * Fires once the Customizer theme preview has started.
	 *
	 * @since 3.4.0
	 *
	 * @param WP_Customize_Manager $manager WP_Customize_Manager instance.
	 */
	do_action( 'start_previewing_theme', $this );
}